我有一个预先填充的UITableViewCell
,其中一个单元格有一个标签UITextField
。假设我有一个带有标签“map”的单元格,我想在该单元格上添加按钮,我该怎么做呢?
我试过但这不起作用。
这是代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"rateSheetCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (indexPath.row == 0)
{
((UILabel*)[cell viewWithTag:100]).text = @"Title";
((UITextField*)[cell viewWithTag:101]).placeholder = @"Title";
((UITextField*)[cell viewWithTag:101]).text = arrayResourceColumns[indexPath.section][indexPath.row][@"resource_title"];
((UITextField*)[cell viewWithTag:101]).keyboardType = UIKeyboardTypeDefault;
}
else
{
if([arrayResourceColumns[indexPath.section][indexPath.row][@"label"] isEqualToString:@"OT ($)"]){
NSInteger desiredLabel = (NSInteger)(arrayResourceColumns[indexPath.section][indexPath.row][@"label"]);
//NSString *desiredLabel = arrayResourceColumns[indexPath.section][indexPath.row][@"label"];
NSLog(@"Label is>>>>--------%ld", (long)desiredLabel);
if (indexPath.row == desiredLabel ) {
UIButton *b = [UIButton buttonWithType:UIButtonTypeCustom];
[b setFrame:CGRectMake(0, 0, 50, 50)];
}
}
((UILabel*)[cell viewWithTag:100]).text = arrayResourceColumns[indexPath.section][indexPath.row][@"label"];
((UITextField*)[cell viewWithTag:101]).placeholder = ((UILabel*)[cell viewWithTag:100]).text;
((UITextField*)[cell viewWithTag:101]).text = arrayResourceColumns[indexPath.section][indexPath.row][@"attribute_value"];
if (indexPath.row == [arrayResourceColumns[indexPath.section] count] - 1)
{
((UITextField*)[cell viewWithTag:101]).enabled = NO;
}
}
}
答案 0 :(得分:2)
有几种方法可以在UITAbleViewCell
上添加按钮:
1)如果您使用的是故事板,您可以使用按钮创建单元格原型,然后您可以使用tag
属性访问此按钮
2)子类UITableViewCell
并在init
上添加按钮
3)在tableView:cellForRowAtIndexPath:
方法
<强> UPD 强>
Here is教程如何使用Storyboards自定义UITableViewCell