如何在Ios中更改表格单元格的不透明度

时间:2014-08-31 05:01:22

标签: ios uitableview

我希望在点按时更改表格单元格的不透明度,并在释放点按时保持其不透明度。我已将选择样式属性设置为无。

3 个答案:

答案 0 :(得分:2)

使用它:

//change opacity when select row
- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
    cell.contentView.layer.opacity = 0.4;
    return indexPath;
}

//the opacity back when deselect row
- (NSIndexPath *)tableView:(UITableView *)tableView willDeselectRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
    cell.contentView.layer.opacity = 1;
    return indexPath;
}

答案 1 :(得分:0)

我不明白你的问题。但是,如果要更改单元格背景颜色和不透明度,则必须设置alpha

cell.backgroundColor = [UIColor colorWithRed:0. green:0.39 blue:0.106 alpha:0.]

单元格点击事件

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

}

如果要在点击时更改单元格颜色,可以使用此方法。

答案 2 :(得分:0)

使用此:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];

    cell.backgroundColor = [UIColor colorWithRed:x green:y blue:z alpha:alphaValue];
    //Or use:
    cell.contentView.backgroundColor = [UIColor colorWithRed:x green:y blue:z alpha:alphaValue];
}