簡體   English   中英

橫向,半視角。 迅速

[英]Landscape orientation, half view. Swift

我的應用在縱向方向上運行良好,但是當我轉到橫向模式時,我看到了白色方形槽的一半視圖。

http://screenshot.cz/22XZB/sss.png

有什么問題?

電影播放器​​代碼

    moviePlayer = MPMoviePlayerController(contentURL: stream)
    moviePlayer.view.frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height)
    moviePlayer.view.sizeToFit()
    self.view.addSubview(moviePlayer.view)
    moviePlayer.fullscreen = true
    moviePlayer.controlStyle = MPMovieControlStyle.Embedded
}

當其moviePlayer視圖的邊界發生變化時,您需要調整moviePlayer大小。

一種解決方案是移動此行:

moviePlayer.view.frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.view.frame.size.height)

進入viewWillLayoutSubviews (如果這是視圖控制器子類)或layoutSubviews (如果這是視圖子類)。

另一種是使用自動布局而不是手動布局。

由於您沒有使用autolayout ,因此必須在定向完成后更新視圖的框架,為此您可以使用方法

override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator) {

}

每次更改方向后都會調用此方法,您可以在此處根據需要更新或設置視域。

另一種方法是使用自動布局,它非常有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM