2012-10-02 100 views
5

我瀏覽了大部分問題並嘗試了幾乎所有內容。但糟糕的是,問題仍然存在。UIWebview在模式視圖中以縱向模式顯示在風景模式下

我有一個UIVIew,它始終以橫向模式啓動,我將以全屏模式視圖的形式呈現第二個視圖(detailView)。

detailview頂部有一個UIwebview

當我將detailView作爲模式視圖呈現時,webview將以縱向模式顯示。

我回國在shouldAutoRotateToInterfaceOrientation也 「YES」 已設置autoresizeautoresizingMaskscalePageToFit性能。

當我旋轉設備,並且當detailView在前面時,web視圖安排正確地橫向。

這個問題只有當我第一次提出modalView時。

旋轉設備正確調整佈局。

+0

更新的風格,我也試着設置在模式視圖的viewWillAppear中的狀態欄。,即,[[UIApplication sharedApplication] setStatusBarOrientation:self.interfaceOrientation] ...即使這不起作用 –

+0

:試試這個 - 創建一個類UIViewController的自定義viewController(比如 - FirstViewController)。在這個VC中,支持兩個方向(Port和Land)。然後創建SecondViewController,它將成爲FirstViewController的子類,顯然在這裏你將創建具有橫向模式的UIView,並且進一步完成與你一樣的工作。 – Nayan

+1

「景觀」或「肖像」模式的終端與「UIViewController」相關,但與「UIView」不相關。那麼你能澄清一下你在'UIWebView'的肖像模式下的含義。您使用哪種方法在'detailview'頂部顯示'UIWebView'? – onegray

回答

0

OK:

例如,你可以在所以它在正確的方向

+0

可以請你爲此顯示代碼 - 我遇到了同樣的問題,但是當涉及到javascript時沒有任何線索 – iOSProgrammingIsFun

+0

@iOSProgrammingIsFun你能否詳細說明你的問題?我有時候做了這件事。我需要搜索我的代碼。 –

+0

好吧,我有一個viewcontroller一個呈現視圖控制器B模式,並在全屏風格。 VC B內部是全屏uiwebview。該webview用於顯示特定的網站 - 說維基百科。如果應用程序以縱向方式運行,則網頁將被格式化爲縱向,並縮放以適合網頁視圖 - 儘管scalestofit未在界面構建器中打勾。我想在移動Safari中打開相同的頁面,頁面的寬度超過了屏幕的寬度,更具可讀性,它也可以縮放,因爲VC B中的webview不能。此外,如果VC B旋轉,頁面就會混亂起來 – iOSProgrammingIsFun

1

如果您在iOS 6上運行的應用程序,你需要下面的代碼在模態視圖控制器,支持橫向:

- (NSUInteger)supportedInterfaceOrientations { 
    return UIInterfaceOrientationMaskLandscape; 
} 

- (BOOL) shouldAutorotate { 
    return YES; 
} 

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { 
    return UIInterfaceOrientationLandscapeLeft; 
} 

此外,請確保您在實際設備上進行測試,而不是到模擬器,因爲自動旋轉在模擬器上的行爲不同。

3

據我所知iPhone上的ModalViews不支持橫向視圖。 iPhone 5的情況可能會有所不同。

但它聽起來像是在設置ModalView而不是WebView到風景,我建議採用不同的方法來處理這個問題。

CGAffineTransform transform = CGAffineTransformIdentity; 
webView.transform = CGAffineTransformRotate(transform,-M_PI/2); 
0

這將這樣的伎倆開始動畫的DetailView像ModalView。首先,我發佈的問題並不清楚。我的問題是,當我以縱向方式加載webview時,它以橫向模式(CSS)加載webview元素,並以橫向模式加載爲縱向模式(CSS)。

原來我沒有應用正確的CSS樣式。

我做的修復是: 在viewDidLoad中和willAnimateRotation方法,我張貼到我的javascript通知基於方向:)

相關問題