簡體   English   中英

iPhone Obj C-2nd XIB如何配置導航控制器和視圖控制器

[英]iPhone Obj C - 2nd XIB How to configure a Nav Controller and View Controller

仍在慢慢學習Obj-C ...原諒愚蠢的問題...

在我的第一個XIB上,我有App Delegate,Nav控制器和幾個視圖控制器。 除此之外,我還有幾個按鈕可以調用第二或第三或以后的XIB。

后續的XIBS都具有顯示視圖的按鈕。

所以在第二+ XIB上,我已經在.h中將其配置為UIViewController,但是我想我需要使它像主.h是AppDelgate一樣。

所以現在XIB想要視圖集,但是我不希望它進入視圖,我希望它進入視圖控制器...我想?

也許我仍然會解決所有這些錯誤。 我需要主菜單才能調用下一個菜單(第二XIB),該菜單又會調用各種視圖。 在我的Java Android應用程序中,我有大約70個類,並且有大約45個視圖,因此我再次猜測我確實需要多個XIBS。

因此,問題是如何設置其他XIB? 他們是AppDelegates還是什么?

那會改變我叫第二個XIB的方式嗎?

XIB或UIView(或它的子類)只是面部組成。

對於實際的編程部分,您直接在這些視圖的“控制器”類之間進行處理。

您制作的視圖控制器可以連接有XIB。 但是,如何以及何時顯示或隱藏視圖的行為全部由視圖控制器本身處理。

因此,如果您想在應用程序頂部放置一個導航欄(假設這是一個簡單的應用程序,希望通過導航欄顯示許多視圖),請注意以下幾點:

在應用程序委托的applicationDidFinishLaunching:方法中創建一個UINavigationController實例:

// Assuming that mainViewController is the first controller + view for your app.
navigationController = [[UINavigationController alloc] initWithRootViewController:mainViewController];
[window addSubview:navigationController.view];

這將自動向您的視圖添加導航欄。 您無需在XIB或其他任何地方手動添加它們。 現在由您決定如何繪制/實現mainViewController。


當您想在mainViewController中顯示另一個視圖時,應調用:

AnotherViewController *anotherViewController = [[[AnotherViewController alloc] init] autorelease];
[self.navigationController pushViewController:anotherViewController animated:YES];

這會將您的新視圖(從另一個ViewController實例)“推入”導航結構,這將自動在頂部添加一個后退按鈕。


希望這有助於清除其工作原理。

如果您有疑問,請對此發表評論。 祝你有美好的一天!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM