表单元格按钮操作以更改标签背景颜色

时间:2016-04-26 14:00:01

标签: ios objective-c uitableview

我需要通过在按钮操作中使用touchup来更改tableview的单元格中的标签背景颜色。我在表视图中创建了自定义单元格然后我将20行添加到单元格中(使用NSMutableArray)然后我创建了UIButton并以编程方式实现了按钮操作(TouchUPInside操作)。

我的条件是"当我点击按钮时,标签背景颜色会更改为该特定索引标签(特定行)中的绿色。但是在我的代码中它反映了所有行中的动作。标签颜色必须在所有行中更改。"

这是我的代码:

//Array Declaration
    kioskStatus = [NSMutableArray arrayWithObjects:@"Open",@"Closed",@"Open",@"Closed",@"Open",@"Closed",@"Closed",@"Open",@"Open",@"Closed",@"Open",@"Closed",@"Open",@"Closed",@"Open",@"Closed",@"Open",@"Closed",@"Closed",@"Open", nil];

 //Table Cell Delegates
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

static NSString *simpleTableIdentifier = @"Cell";

CustomTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];  // Custom cell identifier for the string
if (cell == nil) // Check the cell values are nill or not
{
    cell = [[CustomTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier]; // Initialize the customTableviewCell identifer to the cell.
}


cell.kioskStat.text = [kioskStatus objectAtIndex:indexPath.row];


cell.detailsButton.tag=indexPath.row;

**if(cell.detailsButton.selected==YES)
{
    cell.kioskStat.textColor=[UIColor greenColor];  //if button is selected the label color to change green
}
else
{
    cell.kioskStat.textColor=[UIColor blackColor];    //else the label color to change black
}**

//Button Action
[cell.detailsButton addTarget:self action:@selector(detailsButtonAction:) forControlEvents: UIControlEventTouchUpInside];

return cell;   // returns the cell values to the table view.
}


 -(void)detailsButtonAction:(UIButton*)sender

  {
  [kioskStatus objectAtIndex:sender.tag]

  NSLog(@"button tapped Index %lu",sender.tag);

return [self.tableView reloadData]; //Reload the table view.
 }

这是我的代码。我认为按钮动作有些不对,但我并不确切知道。所以,任何人都可以帮助我实现这一功能。

这是错误指定屏幕截图:

enter image description here

1 个答案:

答案 0 :(得分:1)

如果我正确地提出了您的问题,您想要设置echo $query->execute()? true : false; 的状态并相应地管理UIButton的背景颜色。

UILabel