const char arr[]="Hello There";
Run Code Online (Sandbox Code Playgroud)
我正在尝试创建一个如上所述的字符数组.
下面是我使用的代码.这是创建char数组的正确方法吗?
-(void) createCharArray:(NSString*) text{
char arr[text.length];
for(int i=0;i<text.length;i++){
arr[i]=[text characterAtIndex:i];
}
}
Run Code Online (Sandbox Code Playgroud)
我们是否要担心空终止?我们还有其他方法可以实现同样的目标吗?
HTTPServletRequestreq,有一个方法,getParameterMap()但是,对于post数据,值返回a String[]而不是String
名称=结婚&lastName的=约翰&年龄= 20.
我在post数据中看到它不是一个数组,但是getParameterMap()为每个键(name或lastName或Age)返回数组.有没有更好地理解这一点的指示?
方法2中提供了代码.方法1完全正常.
方法1:
Enumeration<String> parameterNames = req.getParameterNames();
while (parameterNames.hasMoreElements()) {
String key = (String) parameterNames.nextElement();
String val = req.getParameter(key);
System.out.println("A= <" + key + "> Value<" + val + ">");
}
Run Code Online (Sandbox Code Playgroud)
方法2:
Map<String, Object> allMap = req.getParameterMap();
for (String key : allMap.keySet()) {
String[] strArr = (String[]) allMap.get(key);
for (String val : strArr) {
System.out.println("Str Array= " + val);
}
}
Run Code Online (Sandbox Code Playgroud) 我收到以下错误.
尝试在取消分配时加载视图控制器的视图是不允许的,并且可能导致未定义的行为()
尝试了以下解决方案,但对我不起作用尝试在取消分配时加载视图控制器的视图... UISearchController
该链接提供了一个演示项目.
代码如下所示,可以从短下载的时间.
import UIKit
class DetailViewController: UIViewController,UITableViewDataSource,UITableViewDelegate,UISearchResultsUpdating,UISearchBarDelegate {
@IBOutlet weak var basicTable: UITableView!
var tblSearchController:UISearchController!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.tblSearchController = UISearchController(searchResultsController: nil)
self.basicTable.tableHeaderView=self.tblSearchController.searchBar
// self.tblSearchController.edgesForExtendedLayout = (UIRectEdge.Top )
// self.tblSearchController.extendedLayoutIncludesOpaqueBars = true
self.tblSearchController.searchResultsUpdater = self
self.tblSearchController.searchBar.delegate = self
self.tblSearchController.searchBar.sizeToFit()
// self.tblSearchController.searchBar.frame=CGRectMake(0, 0, self.basicTable.frame.size.width, 44.0)
self.tblSearchController.hidesNavigationBarDuringPresentation=true
self.tblSearchController.dimsBackgroundDuringPresentation=true
self.definesPresentationContext=true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of …Run Code Online (Sandbox Code Playgroud) 以下代码抛出一条消息,指出"条件绑定的初始化程序必须具有可选类型,而不是'AnyObject'"
func parseData2(){
var data:NSData?
if let data2 = data {
do {
let details = try NSJSONSerialization.JSONObjectWithData(data2, options: .AllowFragments)
if let actualDetails = details where actualDetails.isKindOfClass(NSDictionary) {
print("Parse Data")
}
}catch {
print("Error \(error)")
}
}
}
Run Code Online (Sandbox Code Playgroud)
为解决上述错误,我使用了以下代码.
func parseData2(){
var data:NSData?
if let data2 = data {
do {
let details:AnyObject = try NSJSONSerialization.JSONObjectWithData(data2, options: .AllowFragments)
if let actualDetails:AnyObject = details where actualDetails.isKindOfClass(NSDictionary) {
print("Parse Data")
}
}catch {
print("Error \(error)")
}
}
}
Run Code Online (Sandbox Code Playgroud)
有没有比上面更好的方法或我的代码可能会崩溃?
考虑到nil check …
我的App.在很多地方我都使用过System Bold Font,它已经成为我应用程序的标准配置.
如果我使用Attributed String默认显示的字体是"Helvetica Neue".在所有字体中,我搜索了系统粗体字体,但找不到它.
那么,在使用归属字符串时如何设置系统粗体字体?

NSDictionary有objectForKey,但它是密钥的大小写.有没有提供类似的功能
- (id)objectForKey:(id)aKey options:(id) options;
Run Code Online (Sandbox Code Playgroud)
您可以在选项中传递"NSCaseInsensitiveSearch"
要从NSDictionary中获取密钥,这是一个案例不可能,可以使用下面编写的代码.
当我使用该属性时,我收到以下错误
AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareSampleRate,&size,
&myAudioDescription.mSampleRate)
Run Code Online (Sandbox Code Playgroud)
上述语句产生的错误是
Error Domain=NSOSStatusErrorDomain Code=560557673 "The operation couldn’t be completed. (OSStatus error 560557673.)"
Run Code Online (Sandbox Code Playgroud)
现在,560557673是什么意思,我在哪里可以找到它的解释?
文档仅提供NSOSStatusErrorDomain作为错误之一.
我试图使用openActiveSessionWithPublishPermissions在Facebook上发布 ,所以如果用户没有登录,他需要首先登录然后使用io6 Facebook本地对话框发布消息.
我发现的是我能够登录,但不会调用完成处理程序.
我注意到的另一件事是,当我再次单击登录按钮时,它会调用完成处理程序,并显示以下错误FBSessionStateClosedLoginFailed.
我确实参考了这篇文章,但仍未找到解决我问题的方法.
NSArray *permissions = [NSArray arrayWithObjects:@"publish_stream", nil];
[FBSession openActiveSessionWithPublishPermissions:permissions defaultAudience:FBSessionDefaultAudienceEveryone allowLoginUI:YES completionHandler:
^(FBSession *session, FBSessionState status, NSError *error)
{
switch (status) {
case FBSessionStateOpen:
{
[FBNativeDialogs presentShareDialogModallyFrom:currentController initialText:nil image:nil url:nil handler:^(FBNativeDialogResult result, NSError *error) {}];
}
break;
default:
break;
}
}];
Run Code Online (Sandbox Code Playgroud) 我可以创建一个NSDictionary
var namesDictionary=Dictionary<String,String>()
namesDictionary["Jacob"] = "Marry"
Run Code Online (Sandbox Code Playgroud)
但是,当我创建一个像下面编码的空字典时,第1行我没问题,但第2行(添加值)会引发错误.
var namesDictionary =[:]
namesDictionary["Jacob"] = "Marry"
Run Code Online (Sandbox Code Playgroud)
错误是"无法分配给此表达式的结果".有没有其他方法来分配值.
我有以下文件结构用于本地化.
A.xib
- > A.xib(基础)
- > A.strings(西班牙语)
- > A.strings(英文)
因为它是"使用基础国际化".我们可以期望只有一个xib文件和本地化所需的字符串文件.
但是,当我将此字符串文件转换为.xib时(我们的每种语言都有.xib文件.在Base Internationalization之前就是这种情况).事情开始在iOS模拟器上工作,设备响应这些变化.
注意: - 我还尝试重置模拟器,清理并创建构建但没有成功.
当我使用.strings文件进行本地化时,不知道为什么本地化失败了.
任何帮助,一个小错误在Xcode IDE上消耗更多时间和耗费开发时间.
ios ×7
objective-c ×3
swift ×3
nsdictionary ×2
xcode5 ×2
arrays ×1
char ×1
core-audio ×1
facebook ×1
ios6 ×1
key-value ×1
let ×1
localization ×1
servlets ×1
xcode ×1
xcode6 ×1
xib ×1