2011-11-25 74 views
4

我正在開發PDF閱讀器。我在旋轉模擬器時遇到問題。我正在做的是,當視圖被ViewController(即loadView)載入視圖時,我創建了UIScrollView,其中包含大小相同(即PDF頁面大小)的UIImageViewUIView。它在肖像模式下完美運行。但是當我在橫向模式下旋轉模擬器時,視圖不會根據設備進行自動調整。我在的視圖控制器設備旋轉時自動調整根視圖

viewDidLoad()試圖

self.view.autoresizesSubviews = YES; 
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 

但它不工作。我很困惑以上兩個屬性是如何工作的。我想這些屬性會將UIScrollView自動調整爲我加載UIScrollView的根視圖的大小。但是應該怎麼做才能自動調整UIScrollView加載的主視圖?

回答

0

這是遲到的回覆......如果您沒有修復它,它可能會有所幫助。

當您在portraid模式下創建任何應用程序,並且如果您希望它旋轉(調整大小)到橫向模式,您應該在用戶界面生成器或.xib(或Storyboard iPad或iPhone)文件中執行此操作。

所以檢查或檢查旋轉在模擬器:

  1. 進入「用戶界面生成器」,或「的.xib」(或‘故事板的iPad或iPhone’)的文件。

  2. 然後選擇「UIImageView」並轉到「顯示屬性檢查器」。

  3. 在第四片(屬性檢查員)將模式設置爲「高寬適應」,以及在第三片(尺寸檢查),並在第五片(尺寸檢查器)設置的自動調整大小屬性爲以下:

將箭頭設置爲所有方向。抱歉無法加載圖片。

  1. 對「UIView」(3)做同樣的事情。

  2. 在您繼續之前,您可以通過選擇詳細視圖控制器並將方向從縱向更改爲橫向來仔細檢查是否已獲得所有自動調整屬性:對不起,目前無法加載圖像。 ..

  3. 您可以在右上角的「模擬指標」中選擇或更改爲「橫向或縱向」,在「尺寸」下選擇「方向」。

如果有什麼不對,請不要擔心:只要將其更改回肖像並仔細檢查設置即可。

0

嘗試使用自動調整大小方法時,我遇到了同樣的問題。所以,我希望這會有所幫助。 (P.S.我假設你以編程方式創建用戶界面,而不是通過IB)

那麼你試過嗎?

內,您的視圖 - 控制添加以下內容:

// Set the View Controller to fit the whole screen. -(BOOL)wantsFullScreenLayout{ return YES; }

裏面的loadView方法修改你的滾動視圖到:

// set the initial size of your scrollView object. 
[scrollView setFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)]; 

// Set the auto resizing attributes. 
[scrollView setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight]; 

除了這一點,你可能需要設置UIView或UIImageView的autoresizingmask邊距取決於佈局yo的類型你需要當設備旋轉。