2013-05-13 56 views
0

我有编程创建的UITableView,并且我编写了代码以编程方式在每个单元上创建UITextField参考特定UITableViewCell中的特定UITextField

当用户点击文本字段时,出现一个选取器并且用户可以从选取器中选择一个项目,并且在做出选择之后,选择应该显示在该特定单元格的文本字段中。

现在我面对的问题是,每当我点击任何表格视图单元格的文本字段时,选取器都会正确显示,但是在从选取器中选取某个项目后,该值将存储在文本中最后一个表视图单元格的字段。为什么会发生?

难道有人请向我解释如何引用特定的文本字段,以便我可以在该特定的文本字段上执行一些操作?

+0

请张贴一些代码。理解代码比模糊描述更容易理解。 – Greg 2013-05-13 09:57:09

+0

你在哪里给文本字段赋值?请发布您正在使用的代码来处理选择器中的选择。 – Greg 2013-05-13 10:11:24

回答

0

创建UITableViewCell的子类,并将其用于单元格。添加属性引用它的文本字段:

@interface YourTableViewCell : UITableViewCell 

@property (strong) UITextField *textField; 

@end 

然后,文本视图分配给小区当你创建:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    static NSString *CellIdentifier = @"cellIdentifier"; 
    YourTableView *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

    if (!cell) { 
     cell = ... // Create the cell here 
     UITextField *textField = ... // Create your text field here 

     cell.textField = textField; // Assign the text field to the cell 
    } 

    return cell; 
} 

一旦你做到了这一点,你的文本字段现在挂它所在的单元格,因此您可以从单元格中获取文本视图并设置其值。