2012-04-06 13 views
0

子ビューがすべての親をカバーするように別のUIViewにUIViewを追加したいと思います。子ビューのフレームが親のフレームよりはるかに大きくなるようにUIViewを別のビューに追加することは安全です

最初は私がやった:私はparentVUにchildVUを追加すると

UIView * childVU; 
childVU = [[UIView alloc] initWithFrame:parentVU.frame]; 

は、childVUのトップはparentVUのそれよりも低かったです。

childVU = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 10000.0, 10000.0)]; 

それはシミュレータ上で正しく実行されているが、それを行うには本当に安全です:

は私がやりましたか?

答えて

1

最初のコードで正しいトラックのどこにいますか? boundsを使用していて、frameではないことを除いて、フレームは親に対して相対的です。

UIView * childVU; 
childVU = [[UIView alloc] initWithFrame:parentVU.bounds]; 

子ビューを大きくすることは機能しますが、それはない正しい方法でそれを行うには、しかし、ビュー上YESmasksToBoundsからclipsToBoundsセットがYESに設定されている場合、それが所有し、子が大きく見て描くNOGますサイズ。

+0

wuhuuuuとても簡単です....ありがとうlotttttt ... –

1

はい、問題ありません。コンテンツを表示する前に親ビューにclipToBoundsが無効になっていることを確認してください。また、大規模なビューサイズであり、古いデバイスではサポートされません。このサイズのコンテンツを実際に使用している場合は、UIScrollViewまたはCATiledLayerに配置する必要があります。

関連する問題