2011-05-12 93 views
0

我遇到了一些麻煩,像所有事情一樣愚蠢,進度視圖覆蓋。iPhone視圖不會縮放以適合iPad屏幕

我創建了UIViewController的一個子類,它帶有一個黑色的50%不透明背景和一個活動指示器,在我的遠程數據類試圖從數據類中獲取數據時,它可以獲取到上下文並消失遠程服務器等。

它可以在iPhone上正常工作,縮放和旋轉。

但是,當我在iPad模擬器或設備上啓動它時,正方形只填滿屏幕的左上角,不會調整大小以適合顯示器。

但是,我所有的其他視圖都是以相同的方式創建的,包括所有的tableview都會被忽略。

我的應用程序初始化與說單細胞表視圖「載入中...」,然後調用遠程數據服務類,然後執行以下操作:

progress = [[ProgressActivityViewController alloc] initWithNibName:@"ProgressActivityViewController" bundle:nil]; 
UIViewController *dlg = (UIViewController *)self.delegate; 
[dlg.view addSubview:progress.view]; 

NB:進步是建立在.h文件爲ProgressActivityViewController) 這是遠程數據服務類,它在添加和刪除子視圖時,當您初始化RemoteData類時,您將它作爲代理傳遞給「self」,以便它可以通過協議與它通信。

我知道這需要一些其他類型的檢查'isKindOfClass'等,我可以在以後添加,但我需要獲得簡單的視圖,以擴展到全屏。

此代碼的工作,並提出了在屏幕上查看,但它只是不填滿屏幕在iPad上

因爲我已經使用了活動的指標示例的源是在此鏈接: http://tapadoo.com/2009/iphone-how-to-do-full-screen-activity-status/

+0

您是否在該視圖上檢查過自動調整大小的遮罩?所有的支柱和彈簧都打開了嗎? – Christian 2011-05-12 20:01:24

+0

是的,在我的XIB中,我基本上有一個視圖和一個UIActivityIndi​​cator控件。所有設置爲「縮放以適合」和「自動調整子視圖」,但如果在iPad上加載,它將不會縮放到屏幕上。我通過爲iPad創建一個獨立的xib並重新使用一些設備檢測代碼並在initWithNibNamed:bundle中加載它來臨時解決了這個問題:但它看起來並不是正確的解決方案。 – JamesB 2011-05-13 09:43:20

回答

0

您的項目中是否有iPad範例.xib,並且在應用程序的plist中列出了iPad xib文件?如果沒有,你只能在左上角看到一個窗口。

創建一個新的通用iPhone/iPad項目,該模板將告訴你在plist中提及iPad xib的位置。

+0

它已經是一個通用應用程序,並且設備特定的佈局位於相關的iPhone或iPad組中,主窗口 - {device} .xib可以正常加載,這是一個子視圖,當應用程序從遠程源請求數據時,該子視圖會以編程方式添加,以模態方式工作。 – JamesB 2011-05-13 09:45:11