2010-01-13 90 views
1

我已經使用Web視圖製作了一個非常簡單的Web瀏覽器應用程序。現在我需要獲取應用程序,以便在iPhone旋轉時,頁面的文本也會旋轉。如何旋轉UIWebView的內容?

我該怎麼做?

我對自動調整大小對話框感到非常困惑,所以有可能我在那裏做了一些錯誤。

任何幫助,將不勝感激!

+3

你可以指定?你想讓WebView的內容自動旋轉嗎?當用戶打開手機時,內容保持正確的方向?或者你想讓內容隨着手機一起旋轉,所以用戶可以橫向翻轉內容,顛倒等。我無法分辨你的問題。 –

回答

1

我想你sholud旋轉UIWebView小部件,而不是其內容。內容也應該旋轉。要支持旋轉,請將以下代碼添加到視圖控制器中:

- (BOOL)shouldAutorotateToInterfaceOrientation: 
    (UIInterfaceOrientation)interfaceOrientation { 
     return YES; 
} 

旋轉的小部件可能看起來與預期不同。在Interface Builder中調整struts和彈簧。

+0

我已經做到了,文字保持肖像什麼是支柱和彈簧?我真的不能理解界面生成器中的自動大小框 – Rupert

+1

UIWebView是一個UIView而不是一個UIViewController子類,不會發送shouldAutorotate – Nick

0

我想你需要給我們一些示例代碼,以確定出了什麼問題。正如Jacek所說,唯一需要做的就是支持UIWebView本身的自動旋轉。內容應該自動旋轉。

0

我認爲你對設備方向和視圖框架感到困惑。

在大多數情況下,UIViews會根據方向更改而改變。但要澄清 - 這不是因爲方向改變,而是因爲佈局改變。

只有UIViewControllers需要考慮設備方向 - UIViews不需要。當設備方向的變化,從的UIViewController的實例方法捕獲事件:

– willRotateToInterfaceOrientation:duration: 
– willAnimateRotationToInterfaceOrientation:duration: 
– didRotateFromInterfaceOrientation: 

的UIViewController中然後重新佈局的意見 - 通往UIViews的重新定義。在很多情況下,iOS可以通過設置UIViewAutoresizeMask來幫助您簡化重新佈局過程。例如:

myWebview.autoresizeMask = UIVIewAutoresizeMaskFlexibleHeight | UIVIewAutoresizeMaskFlexibleHeight; 

意味着當webview的超視圖改變了界限時,webview會相應地改變。

作爲一個總結,UIView只處理其框架/範圍等