我正在按照 Facebook 的教程发布到用户的墙上: http: //developers.facebook.com/docs/howtos/publish-to-feed-ios-sdk/ 虽然它是在考虑 .xib 项目的情况下制作的,但我到目前为止,我的故事板项目已经能够很好地完成所有事情。但是,我已经到了需要将一些代码放入 initWithNibName:bundle: 方法的地步,但我不能这样做,因为我正在使用情节提要。而且,由于很难确定何时调用该方法,因此我不能只编写一个名为 initWithNibName:bundle: 的方法并从其他方法调用它。如果有人对如何解决我的问题有任何想法,请说出来。谢谢。
问问题
9841 次
1 回答
39
我自己也遇到了这个问题。情节提要似乎不使用initWithNibName:bundle:
,但要么initWithCoder:(NSCoder *)aDecoder
要么initWithStyle:(UITableViewStyle)style
。
这两种方法的默认实现如下所示:
- (id)initWithCoder:(NSCoder *)aDecoder
{
self = [super initWithCoder:aDecoder];
if (self) {
// Custom initialization
}
return self;
}
- (id)initWithStyle:(UITableViewStyle)style
{
self = [super initWithStyle:style];
if (self) {
// Custom initialization
}
return self;
}
我自己还没有使用 initWithStyle 版本,但我想它是为 UITableViewController 调用的。如果有疑问,您可以简单地将这两种方法添加到文件中,以及打印方法名称(或任何其他唯一字符串)的 NSLog() 调用。然后您可以在模拟器中运行它以查看调用了哪个,并删除了另一个。
我强烈建议initWithNibName:bundle:
不要使用任何其他init
方法给自己打电话。最好将代码移动到正确的方法。
于 2012-08-16T15:19:45.510 回答