0

私は uilabel を持っており、この uilabel はテキストの長さに応じて行単位で成長するはずです。とにかく、私はそれを行う方法がわかりません。私はすでにネット上で別のソリューションを検索しましたが、私が望むように機能するものは見つかりませんでした。現在、私はここでこれをやっています:

size_label = [[UILabel alloc] init];
size_label.frame = CGRectMake( 0, 0, 180, 10000);
size_label.font = [UIFont systemFontOfSize:15];
size_label.text = some_long_text;
size_label.numberOfLines = 10000;
[size_label sizeToFit];
NSLog(@"size_label.frame.size.height = %f", size_label.frame.size.height );

NSLog の結果は常に 19 です。テキストには少なくとも 150 ピクセルが必要なので、これは私が望むものではありません。

以下に応じて取得する方法:

  1. uilabel の幅 (幅は変更してはなりません)
  2. テキストの長さと uifont

  1. 行の数
  2. uilabel の高さ

すべてが表示され、テキストがうまく収まるようにします。

4

1 に答える 1

1

Follコードは、ラベルの自動サイズ設定に役立つ場合があります

UILabel *size_label = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 0.0, 180.0, 40.0);
size_label.font = [UIFont systemFontOfSize:15];
size_label.text = some_long_text;
size_label.numberOfLines = 0;

[size_label sizeToFit];
于 2013-02-01T18:53:36.340 に答える