我没有手动实例化我的控件/视图。我已经设置了这样的故事板:
-> UITabBarController-> UINavigationController-> HomeViewController
我将最后一个的控制器类切换到我自己的HomeViewController。
以下是代码:
@interface HomeViewController : UIViewController {
UIView *buttonView;
UITableView *buttonTableView;
}
@property (nonatomic, retain) IBOutlet UIView *buttonView;
@implementation HomeViewController
@synthesize buttonView;
在HomeViewController的主视图中,有一个子视图(UIView
)通过按住Ctrl键拖动其中一行来连接到插座。
但我不能在我的生活中找到一个方法UIViewController
来覆盖将在生命周期的某个地方调用的方法。到目前为止,我已尝试将我的东西放入
// didn't expect it to work
-(id)init
// didn't expect it to work
-(id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
// had hopes for this one, but no such luck
-(id)initWithCoder:(NSCoder *)aDecoder {
// this one looked promising...
-(id)awakeAfterUsingCoder:(NSCoder *)aDecoder {
// not much hope
-(void)awakeFromNib {
// my main candidate for a long while...
-(void)viewDidLoad {
当我完全运行界面加载时,我会看到我的标签,导航栏和视图。但无论我在NSLog()
中做了多少HomeViewController
,控制台中都没有任何输出。
我是否遗漏了故事板的生命周期?我的控制器没有实例化或使用过吗?
答案 0 :(得分:3)
使用故事板调用viewDidLoad,故事板设置出现问题。听起来它正在加载一个标准的UIViewController而不是你的HomeViewController子类。确保在故事板中设置HomeViewController类。
答案 1 :(得分:1)
问题是我最近重命名了故事板,并没有意识到Xcode没有重命名Main Storyboard
设置。我已多次清理该项目,但似乎旧的故事板仍然存在并加载。