sizeToFitを作成する方法は、幅を無視しますか?

私は幅を無視したいが、高さに基づいてちょうど "サイズに合わせる"コードの部分でsizeToFitを使用しています。それは可能ですか?

3

2 答え

sizeThatFits:メソッドを使用し、必要な幅と高さの CGFLOAT_MAX の値を CGSize に渡す必要があります。これは、たとえば、複数行のラベルを特定の幅にサイズ変更するための推奨される方法です。

これはAppleのエンジニアが、あなたが求めている質問に対して私が作った機能要求に応じて私に勧められました。

7
追加された

元の境界を保存し、 -sizeToFit を呼び出した後に新しい境界を古い幅に設定することができます。

CGRect oldBounds = someView.bounds;
[someView sizeToFit];
CGRect newBounds = someView.bounds;
newBounds.size.width = oldBounds.size.width;
someView.bounds = newBounds;
5
追加された
出来た。しかし、フレームごとに範囲を変更しなければならなかった
追加された 著者 jose920405,