2011-07-21 56 views
1

我正在使用tabbar應用程序。當應用程序啓動時,默認情況下第一個標籤被選中如何在加載應用程序時取消選項卡

我想要的是當我啓動應用程序時,標籤欄應顯示沒有選定的選項卡。就像說,如果我有4個選項卡,然後非應用程序啓動時它們會被選中。默認情況下,第一個被選中。

我想顯示一些不屬於任何選項卡的視圖。

可以嗎?

謝謝...

+1

ModalViewControllers? – Legolas

回答

1

是的,這是可能的。

你需要創建一個視圖編程和窗口添加視圖的SuperView,當你不需要它只是刪除它形成的SuperView

[SuperViewname removeFromSuperView]; 

代碼段:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    // Override point for customization after application launch. 
    // Add the tab bar controller's view to the window and display. 
    [self.window addSubview:tabBarController.view]; 
     [self.window makeKeyAndVisible]; 


**AdditionalView** 
//======================= LoginView ================================================ 
    loginview=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)]; 
    imgview_logingpage=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 480)]; 
    imgview_logingpage.image=[UIImage imageNamed:@"Screen.jpg"]; 

    loginview.backgroundColor=[UIColor blackColor]; 


     [self.window addSubview:Viewnavigation.view]; 
    [self.window addSubview:loginview]; // To add the View in Window View 

} 

//要刪除的SuperView 查看 - (無效)login_clicked:(ID)發送 {

 Homepage *obj_homepage=[[Homepage alloc]initWithNibName:@"Homepage" bundle:nil]; 
     [self.window addSubview:obj_homepage.view]; 
     [loginview removeFromSuperview]; 
     [loginview release]; 
} 

或者要麼更簡單的方法是:通過PresentM打開新視圖odalViewController

+0

是的,我知道這種方法...但標籤欄應該同時顯示。 – Maulik

+0

不,它不可行....如果您使用Tab控制器,那麼將選擇任何選項卡....更好地使用任何視圖和自定義工具欄,這將給TAbbarcontroller的幻覺。不過,它似乎是不可能的 –

1

如果你有一個明顯的tabBarController,然後東西一定會被選中。沒有辦法繞過這個。

然而,如果你想隱藏的TabBar,那麼可以肯定做到這一點,或者通過其hidden屬性設置爲YES或者通過在所選擇的標籤的頂部呈現模態的視圖(例如,第一的viewController)。

+0

感謝您的回覆..但我想知道更多關於它......你能解釋爲什麼我不能? – Maulik

1

是的,可以顯示不屬於由tabbar控制器管理的視圖控制器之一的視圖。有很多方法可以做到這一點。
您可以模態地呈現視圖控制器,或者只是在TabBar控制器的視圖中添加子視圖。

但只要tabbar控制器得到instanciated,有沒有辦法取消選擇每個選項卡。

相關問題