从UITableView中的静态单元格中单击时,使UITextView全屏显示

时间:2013-02-16 23:54:59

标签: ios uitableview uiviewcontroller

ViewController包含一个带有静态(自定义)单元格的TableView。其中一行由UITextView组成,显示2行文本(作为预览)。当用户点击它时,它会打开一个填满全屏的UITextView。

else if (indexPath.row == 3) {
    static NSString *countryRegionCellID = @"NotesCell";
    NotesCell *cell = (NotesCell *)[tableView dequeueReusableCellWithIdentifier:countryRegionCellID];
    if (!cell) {
        NSArray* topLevelObjects = [[NSBundle mainBundle] loadNibNamed:countryRegionCellID owner:self options:nil];
        for (id currentObject in topLevelObjects) {
            if ([currentObject isKindOfClass:[NotesCell class]]) {
                cell = (NotesCell *)currentObject;
                break;
            }
        }
    }
    [self drawBorder:cell];
    [self drawPersonalNotes:cell];
    return cell;
} 

UITextView委托调用:

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
    NSLog(@"textViewShouldBeginEditing");
    [textView becomeFirstResponder];    
    CGRect r = [[UIScreen mainScreen] bounds];
    [textView setFrame:r];
    return YES;
}
- (void)textViewDidBeginEditing:(UITextView *)textView
{
    NSLog(@"textViewDidBeginEditing");
}

由于静态单元格的定义高度为44,因此UITextView仅填充单元格而不是全屏幕。我是否在表格视图的顶部引入了新的视图控制器?感谢。

1 个答案:

答案 0 :(得分:1)

只需要一个新的vc,它只包含一个简单的textview,但你希望它看起来。

完成后,通过使用presentingViewController属性访问它,将该文本分配给tableView中的任何属性。很高兴。