如何使用initwithnib语法声明nib文件它显示'Warning: passing argument 1 of initwithNibName:bundle: from Incompatible pointer type'
。
我的陈述是:
SpanishViewController *spanishview = [[SpanishViewController alloc]
initWithNibName:"LocalizeMeViewController.xib (es)"
bundle:[NSBundle mainBundle]];
先谢谢........
答案 0 :(得分:1)
除非你真的知道你在使用自定义NIB文件名做什么,否则你应该像这样加载NIB:
self.myViewController = [[[MyViewController alloc] initWithNibName:nil bundle:nil] autorelease];
或:
MyViewController *myViewController = [[MyViewController alloc] initWithNibName:nil bundle:nil];
Apple未来会在未经宣布的情况下添加一些新功能,这取决于“我不在乎,请自动选择NIB”功能。
PS:“不兼容的指针类型”意味着你试图传递一个错误的“类型”的变量。你可能写道:
[... initWithNibName:"name" bundle:nil]
...即忘记了“@”符号。这将它转换为与预期不同的类型/指针类型(特定类型的字符串指针)。
答案 1 :(得分:0)
您可能没有输入xib的确切名称。我不建议在括号上添加括号。正如亚当所说,你需要在它之前放一个'@',因为它仍然是一个NSString,它作为一个参数。所以名称应该是NSString。 @ “myNibName”
答案 2 :(得分:0)
只是做:
SpanishViewController *spanishview = [[SpanishViewController alloc]
initWithNibName:@"LocalizeMeViewController"
bundle:nil];