2011-01-12 108 views
1

我有一些問題顯示來自視圖控制器的視圖。基本上,我有一個UIViewController類,我通過重載loadView方法編程創建視圖。以下是我的代碼:無法從UIViewController添加UIView

UIView* view = controller.view; 
UIWindow* window = [UIApplication sharedApplication].keyWindow; 
if(!window) 
{ 
    window = [[UIApplication sharedApplication].windows objectAtIndex:0]; 
} 
[window addSubview:view]; 

該視圖不可見。

但是,如果我通過調用

[self presentModalViewController: controller animated: YES]; 

創建了一個簡單視圖基於應用程序的一切運作良好。

我是新來的iOS視圖編程。我做的任何事都是錯的?

+1

歡迎來到Stack Overflow,Steve。順便說一句,如果您在代碼中使用代碼格式化程序(編輯器中的圖標),它將自動正確格式化。我還用「ios」和「iphone」標籤更新了您的問題。 – 2011-01-12 21:35:05

回答

0

史蒂夫,

我不知道你正試圖在這裏實現的目標,而是一個典型的iPhone應用程序將有一個基地UIViewController子類,說一個導航控制器或選項卡控制器和控制器的視圖添加爲一個appDelegate類中UIWindow視圖的子視圖。

然後,您將進一步實例化UIViewControllers或其子類,並將這些視圖添加爲當前視圖的子視圖等。

您是否檢出了XCode中的基本模板?這些應該會告訴你appDelegate等是如何工作的。根據我的經驗,您通常不需要在其他類中混淆UIWindow。

+0

謝謝。你的意思是我不能添加一個UIView到UIWindow?我查看了FB Connect,它將一個UIView添加到UIWindow中,並且工作正常。但是當我試圖從UIViewController添加視圖到視圖時,它不起作用。 – 2011-01-13 00:22:10