[英]How to access tab bar controller in iOS 5?
在Xcode 4.2中,我從“選項卡式應用程序”模板創建了一個新項目。 現在,我想訪問AppDelegate中的選項卡欄控制器,但是缺少此屬性。 如何解決問題。
在以前版本的Xcode中,我可以通過調用self.tabBarController來訪問它,但是,在iOS 5中無法做到這一點。
在“選項卡式應用程序”模板項目中顯示的tabBarController
屬性不會發生任何魔術。 我想iOS 5之前的模板是經過設計的,因此選項卡控制器已經設置為您的附加插座。 如果它不在您使用的模板中,那么您只需要自己添加屬性。 以下是有關如何執行此操作的說明。
你只需要添加一個屬性,然后抓住rootViewController
從你UIWindow
中applicationDidFinishLaunching
。 也就是說,您想要在應用程序委托標頭中添加以下內容:
@interface MyAppDelegate : NSObject <UIApplicationDelegate>
...
@property (nonatomic, strong) UITabBarController *tabBarController;
...
@end
然后將其綜合到您的應用程序委托實現中,並從rootViewController
抓取它:
@implementation MyAppDelegate
@synthesize tabBarController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.tabBarController = (UITabBarController*)self.window.rootViewController;
return YES;
}
@end
如果您使用的是4.2,我很確定在appDelegate上,它會自動添加
@property (strong, nonatomic) UITabBarController *tabBarController;
您可以使用自己一直在使用的方法self.tabBarController訪問實現文件
只要確保它在實現文件中正確合成,然后在適當的方法主體中編寫代碼即可
對不起,但我不太清楚你的問題是什么
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.