我在調整UITableViewCell中的UITextView的大小。我也想相應地調整UITableViewCell的大小。我的UITableViewCell調整正確,但UITextView不。它最終只是兩條線,而不是根據正確的尺寸來確定尺寸。當我cellForRowAtIndexPath方法中初始化它,它看起來像:在UITableViewCell中調整UITextView的尺寸
UITextView *notesTextView = [[UITextView alloc] initWithFrame:CGRectMake(83, 12, TEXTVIEW_WIDTH, 22)];
notesTextView.tag = TEXTVIEW_TAG;
notesTextView.delegate = self;
[cell.contentView addSubview:notesTextView];
當我試圖修改它在TextView的委託方法,我做的:
CGSize size = [textView.text sizeWithFont:textView.font constrainedToSize:CGSizeMake(TEXTVIEW_WIDTH, 460) lineBreakMode:UILineBreakModeWordWrap];
NSLog(@"size: %@", NSStringFromCGSize(size)); // has the correct size
if (size.height > self.notesRowHeight) {
self.notesRowHeight = size.height;
UITextView *aTextView = (UITextView *)[self.view viewWithTag:TEXTVIEW_TAG];
CGRect textViewFrame = CGRectMake(aTextView.frame.origin.x, aTextView.frame.origin.y, TEXTVIEW_WIDTH, size.height);
aTextView.frame = textViewFrame;
aTextView.contentSize = size;
[aTextView sizeToFit];
[aTextView sizeThatFits:size];
NSLog(@"%@", NSStringFromCGRect(aTextView.frame)); // has the correct height
那麼最終發生的事情是的tableView正確調整大小,即使textView框架尺寸正確(例如{{83,12},{197,120}}),textView只有2行。它不會像我打算的那樣取得UITableViewCell的大小。
編輯:當我嘗試調整框架UITextView在一個正常的UIView不是UITableViewCell,它工作得很好。所以我不確定這種情況有什麼不同。
你沒有提到究竟你在這遇到什麼問題,這將是很好,如果你可以添加日誌的詳細信息,你得到了什麼,你期待什麼。 – rishi
@rishi我加了更多的問題。 – Crystal