在Google上搜索此问题后,我设法做到了这一点
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *cellIdentifier = @"InsertMarksCell";
SaveAllExamMarksForAllStudentsTableViewCell *myCell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
StudentPersonalInfo *newStudentName = feedItemsNow[indexPath.row];
myCell.txtStudentMark.text = @"hello";
myCell.txtStudentMark.delegate = self;
myCell.txtStudentMark.tag = indexPath.row;
return myCell;
}
这段代码我设置了文本字段" txtStudentMark"委托并设置它的标签......
-(void) textFieldDidEndEditing: (UITextField * ) textField
{
NSString *text = [(UITextField *)[self.view viewWithTag:55] text];
NSLog(@"%@",text);
}
我使用NSLog函数
继续获取空值我在自定义单元格中有一个textField,用户将填充数据,我需要从所有文本字段中获取所有数据,我是否正确的方式?
根据我的理解,我需要为textField设置标签并将其设置为委托,然后我可以通过标签调用textfield来获取其中的文本。
我怎样才能做到这一点?
答案 0 :(得分:2)
为什么不使用
-(void) textFieldDidEndEditing: (UITextField * ) textField
{
NSString *text = [textField text];
NSLog(@"%@",text);
}
?
您的问题是您要将文本字段添加到单元格中,但请查看此标记。
编辑:
从tableview获取文本字段
-(void) textFieldDidEndEditing: (UITextField * ) textField
{
UITableViewCell *cell = [self.view.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:55 inSection:0]];
NSString *text = [(UITextField *)[cell.contentView viewWithTag:55] text];
NSLog(@"%@",text);
}
答案 1 :(得分:0)
@Doro感谢您的帮助。
因为问题解决了,这个答案对我来说很有效
通过TAG获取文本字段中的行号和数据
-(void) textFieldDidEndEditing: (UITextField * ) textField
{
// here get the tag number which is the row number
NSInteger *rowNumberWithout200 = (long)textField.tag;
NSString *myRow = [NSString stringWithFormat: @"%ld", rowNumberWithout200];
NSLog(@"row %@",myRow);
// get the text in the cell with the required tag...
UITableViewCell* myCell = (UITableViewCell*)textField.superview;
NSString *StudentMark = [(UITextField *)[myCell viewWithTag:textField.tag] text];
NSLog(@"mark %@",StudentMark);
}