私の場合、含まUITableViewCellれる a の高さに合わせてa のサイズを変更するにはどうすればよいUITextViewですか?
私は現在、次のコードを使用してこれを達成しようとしています:
- (CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
// init the font that we use
UIFont *font = [UIFont fontWithName:@"SourceSansPro-Regular" size:16];
if (indexPath.section == 0) {
// get the text size of the thread
CGSize textSize = [_thread.text sizeWithFont:font constrainedToSize:CGSizeMake(280, CGFLOAT_MAX) lineBreakMode:UILineBreakModeWordWrap];
return textSize.height + 20;
}
// default
return 60;
}
UITableViewCellこのメソッドで にアクセスできれば、そのcontentSizeプロパティを使用UITextViewしてそれを返すことができると思います。しかし、実行フローのこの時点ではそれが可能だとは思いません。
get size 関数によって返されるテキスト サイズに合わせてスケーリングされないため、そのバッファーを微調整することはできません。テキストが短いほど、より大きなバッファ サイズがより明確になります。
これは の高さを調整していますが、内部がUITableViewCellすべて表示されているわけではありません。メソッドでのUITextView幅を指定しました。定数を使用して、必要なだけワードラップできるように、本質的に最大の高さを持たないようにしたいと指定しました。myの の上にユニット バッファーがあり、その下にもユニット バッファーが必要なため、メソッド呼び出しの結果の高さにユニットのバッファーを追加します。UITextViewsizeWithFont:constrainedToSize:lineBreakMode:280CGFLOAT_MAX2020UITextViewStoryboard20
ただし、これらすべての最終結果には、まだテキストが切り取られています。これが私が話していることの写真です:

何か案は?