以编程方式将两个文本字段添加到tableViewCell

时间:2013-11-14 16:56:16

标签: ios uitableview tableview

我想以编程方式将两个文本字段添加到tableViewCell子类(稍后更多),但难以从视图控制器访问文本字段。

我的表视图子类是:

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
        textField = [[UITextField alloc] initWithFrame:CGRectZero];
        textField.clearsOnBeginEditing = NO;
        textField.textAlignment = UITextAutocapitalizationTypeAllCharacters;
        textField.returnKeyType = UIReturnKeyDone;
        [self.contentView addSubview:textField];
    }
    return self;
}


- (void)layoutSubviews
{
    [super layoutSubviews];
    CGRect rect2 = CGRectMake(100.0, 10.0, 200, 30.0);
    textField.text = @"testing";
    [textField setFrame:rect2];

}

在我的视图控制器中:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath   *)indexPath
{
     static NSString *CellIdentifier = @"Cell";

    XTSessionCell_iPad *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier    forIndexPath:indexPath];

    if (cell == nil) {
        cell = [[XTSessionCell_iPad alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }

   // Configure the cell...
   // ????
   // cell.textField.text = @"enter";

   return cell;
}

任何帮助非常适合。

由于

1 个答案:

答案 0 :(得分:1)

正如其他人在评论中提到的那样,使textView成为XTSessionCell_iPad.h文件中的只读属性。您的XTSessionCell_iPad.h文件至少应为:

@interface XTSessionCell_iPad : UITableViewCell

@property (nonatomic, readonly) UITextField *textField;

@end

并且您的XTSessionCell_iPad.m文件将具有类扩展以允许写入该属性:

@interface XTSessionCell_iPad()

@property (nonatomic, readwrite) UITextField *textField;

@end