2011-09-02 101 views

回答

1

從你的問題中不清楚爲什麼你想要它,但我想它是佈局你的子視圖。幸運的是,蘋果公司就知道你會想這樣做並實施-(void)layoutSubViews看到:When is layoutSubviews called?

+0

我有(在iPad上)一個webView,加載一些本地htmlcode來顯示youtube視頻。保存播放器的html div需要與webView的大小相同。但由於我的webview是autoresized我需要訪問其自動大小的大小。然而,我在記錄框架時得到的只是調整大小之前的尺寸。 – Jakob

+0

有什麼困擾我的 - (void)layoutSubViews方法是我必須繼承一個我想避免的UIWebView – Jakob

+0

然後你有問題。爲什麼不直接播放YouTube視頻,以便更好地控制佈局。這是混合應用需要解決的一個非常棘手的難題。看到這裏http://stackoverflow.com/questions/4459975/iphonehow-to-stream-and-play-youtube-video-with-in-application-using-mpmovieplay如何做到這一點。 –

-6
NSLog(@"%f; %f; %f; %f;", yourView.frame.origin.x, yourView.frame.origin.y, yourView.frame.size.width, yourView.frame.size.height); 

這是你如何能得到您的視圖

+1

不回答困難的部分:何時。 –

+0

-1:不回答問題 –

0

我試過layoutSubviews的框架,但它被稱爲不止一次這是一個問題,當我需要自動調整大小的框架,以創建一個CGContext畫。

我使用的解決方案是在我的自定義UIView上顯示一個init方法,以便其父視圖控制器調用其viewWillAppear

我希望有一種方法可以在自定義UIView的實現中完成這一切,但它無法幫助我(以及Google和Apple的文檔和SO)。

0
- (void)viewDidAppear:(BOOL)animated { 
    CGFloat uIViewWidth = self.uIView.bounds.size.width; 
    CGFloat uIViewHeight = self.uIView.bounds.size.height; 
    CGRect uIViewSize = CGRectMake(0, 0, uIViewWidth, uIViewHeight); 
}