30

UILabelを「上揃え」にする方法、つまりテキストをラベルビューの上部に貼り付ける方法はありますか?中央が垂直に配置されているのとは対照的に、またはデフォルトのようにビューの中央に浮かんでいますか?

これは、左、右、中央に配置された3つのラベルと、中央と上に配置されたUITextViewの画像です。textViewのテキストは、ビューの垂直方向のサイズに関係なく、上部に固定されます。ラベルでも同じことができますか?

ここに画像の説明を入力してください

4

7 に答える 7

37

それには回避策があります:

  1. 高さと幅を定数 <= で必要な最大の高さ | 幅に設定constraintUILabelます。
  2. ゼロに設定number of linesします。
  3. storyboard1 行だけに収まるように高さを設定します。
  4. UILabelcallのテキストを設定した後のコードでsizeToFit

これにより、必要なUILabel最大幅と高さの境界内でサイズを変更でき、テキストは常に上揃えになります。

于 2014-10-29T14:08:40.050 に答える
10

UILabeliOS でデフォルトでa の垂直方向の配置を設定する方法はありません。代わりに、 がsizeWithFont提供するいずれかの方法を使用することをお勧めしますNSString。どちらを使用するかは、複数行または単一行のどちらのラベルが必要かによって異なります。sizeWithFont:forWidth:lineBreakMode:は単一行のラベルにsizeWithFont:constrainedToSize:lineBreakMode:使用できますが、複数行のラベルには使用できます。font問題のラベルのプロパティを使用してフォント パラメータを簡単にロードできます。これらの関数の使用に関する詳細については、こちらを参照してください。

これらのメソッドはCGSize、 のテキストに基づいて、ラベルの最小サイズの構造体を返しますNSString。ラベルの正しいサイズを取得したら、スーパービューの上部に簡単に配置でき、上揃えに表示されます。

于 2012-08-08T14:56:13.667 に答える