![](/img/trans.png)
[英]How to implement a slide out menu only in the first tab of tabbarcontroller
[英]tabBarController and first Tab viewDidLoad
我創建了一個 tabBarNavigated 應用程序。 在第二個選項卡中,我做了一些工作正常的事情,但現在我想在第一個選項卡中做一些事情,所以首先我嘗試NSLog
一個字符串,但我沒有得到任何反應。
- (void)viewDidLoad
{
NSLog(@"Test");
}
如果我將 label 添加到視圖中,它將顯示,但對我的代碼沒有反應。
如果我啟動我的應用程序,我會看到此視圖,但我無法在此方法中調用任何操作,即使我更改選項卡,並且 go 回到第一個,仍然沒有日志。
我嘗試在 GehaltView 中登錄
這是主窗口
viewWillAppear 不起作用:(
-viewDidLoad
方法僅在加載視圖時調用。 除非視圖被卸載,否則不會再次調用此方法,在這種情況下將調用-viewDidUnload
。 如果存在 memory 問題,則可以卸載視圖,否則它們通常會保留。
如果您想在每次視圖出現時觸發一個動作,那么您可以使用-viewWillAppear:
方法。 每次視圖重新出現時都會調用此方法。 您可以使用-viewWillDisappear
跟蹤視圖何時消失,並在您在兩個選項卡之間切換時觀察兩者被調用。
另請注意, -viewDidLoad
可能會在視圖出現之前被調用,但-viewWillAppear
只會在視圖實際出現時(或之前的片刻,如will
所示)被調用。
編輯:代碼應為
-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
NSLog(@"View Will Appear");
}
編輯:整個答案假設您有一個UIViewController
的子類。 在我看來,您正在繞過使用 viewControllers,這通常是一個壞主意。
我找到了解決方案,在界面生成器中,我必須將自定義 class 添加到 forst 選項卡。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.