我正在尝试制作一个用户可以在其中输入数据的tableview。我希望它在创建新联系人时看起来与iPhone上的联系人应用程序几乎完全相同。
我在下面发布了我的代码。
在标题文字旁边,我希望用户输入标题,在说明文字旁边,我希望用户输入说明,旁边的时间,我希望用户输入时间,以及我希望用户在某个位置输入的位置文本旁边。
我完全迷失了如何做到这一点,任何帮助将不胜感激!
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
}
if(indexPath.row == 0) {
cell.textLabel.text = @"Title";
}
else if(indexPath.row == 1) {
cell.textLabel.text = @"Description";
}
else if(indexPath.row == 2) {
cell.textLabel.text = @"Time:";
}
else if(indexPath.row == 3) {
cell.textLabel.text = @"Location:";
}
// Configure the cell...
return cell;
}
答案 0 :(得分:2)
您可以使用UILabel和UITextfield创建自定义单元格,然后重复使用自定义单元格
使用cellForRowAtIndexPath:
中的自定义单元格如下
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
LoginCell *cell = (LoginCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"LoginCell" owner:self options:nil];
cell = [nib objectAtIndex:0];
[cell setSelectionStyle:UITableViewCellSelectionStyleNone];
}
if (indexPath.row == 0) {
cell.txtBox.placeholder = @"example@gmail.com";
cell.lbllabel.text = @"Email";
}
else {
cell.txtBox.placeholder = @"Required";
cell.lbllabel.text = @"Password";
}
cell.Tag = indexPath.row;
return cell;
}
从文本框中检索值
NSIndexPath *indexEmail = [NSIndexPath indexPathForRow:0 inSection:0];
LoginCell *cellEmail = (LoginCell *)[loginTableView cellForRowAtIndexPath:indexEmail];
NSString *strEmail = cellEmail.txtBox.text;
NSIndexPath *indexPassword = [NSIndexPath indexPathForRow:1 inSection:0];
LoginCell *cellPassword = (LoginCell *)[loginTableView cellForRowAtIndexPath:indexPassword];
NSString *strPassword = cellPassword.txtBox.text;
答案 1 :(得分:0)
使用您需要的框架创建UITextView对象的实例,然后按以下方式将其添加到单元格的contentView子视图中
[cell.contentView addSubview:textView];
希望这有帮助