0

私は持っていUIViewます。私はUIViewプログラム的に内部に線を引いています。しかし、線が の外に出ると、線の出てUIViewいる部分は見えなくなります。UIViewメソッド内で描画したdrawRectものが見えるようにサイズを変更するにはどうすればよいですか?

4

3 に答える 3

1

視点を変えることができます。線が水平の場合は、ビューに幅を与え、そうでない場合はビューの高さを増やします。

  view.frame = CGRectMake(view.frame.origine.x, view.frame.origine.y,view.frame.size.width,lengthOfLine ); 
于 2013-05-28T10:10:04.787 に答える
0

描画している曲線がサブビューの場合は、sizeToFitメソッドを利用できます。これにより、ビューのフレームが曲線 (およびすべてのサブビュー) を囲みます。次に、ビューのフレームを再配置およびスケーリングして、ウィンドウに収まるようにします。

于 2013-05-28T10:25:51.577 に答える
0

コメントで、実際に曲線を描いていると述べました。私が知る限り、曲線のバウンディング ボックスを自分で計算する必要があります。

境界ボックスに基づいて、UIViewboundsプロパティを更新します (Durgaprasadが提案したように)。これにより、基になる のサイズも変更され、基CALayerになる Core Graphics レンダリング コンテキストのビットマップが大きくなります。

曲線について詳しく知らなければ、二次 Beziers に関する非常に一般的な議論にリンクすることを除けば、助けるのは難しいです。

-drawRect:誰かがあなたの問題を再現できるように、最小限の実装で質問を更新することをお勧めします。

于 2013-05-28T10:31:49.500 に答える