UITableView,UILabel 文本颜色在选择行时没有改变? [关闭]
Posted
技术标签:
【中文标题】UITableView,UILabel 文本颜色在选择行时没有改变? [关闭]【英文标题】:UITableView, UILabel text color not changing while selecting row? [closed] 【发布时间】:2014-07-23 05:41:28 【问题描述】:我有UITableView
,我在UITableView
中有四个带有文本(白色)的标签,当我选择行时,我想在blackColor
中更改标签textcolor
。
【问题讨论】:
【参考方案1】:没有你的代码很难说你哪里错了?但我把我的逻辑放在这里
首先给出cellForRowAtIndexPath
中每个UILabel
的标签,比如,
lbl1.tag = 101;
lbl2.tag = 102;
.
.
.
然后
- (void)tableView:(UITableView *)tv didSelectRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewCell *cell = [self tableView:tv cellForRowAtIndexPath:indexPath];
UILabel *label = (UILabel*)[cell viewWithTag:101]; // you can get label like
[label setTextColor:RedColor]; // set as you want
.
.
// write for each label
当你的单元格被取消选择时,也可以设置它的颜色。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewCell *cell = [self tableView:tv cellForRowAtIndexPath:indexPath];
UILabel *label = (UILabel*)[cell viewWithTag:101]; // you can get label like
[label setTextColor:RedColor]; // set color as it is
.
.
.
// write for each label
【讨论】:
我只创建了一个标签为 indexpath.row 的 uilabel,但它不起作用 @RameshKumar - 那就跟我来吧。 是的,我认为这个标签会起作用,因为标签在单元格内... @iPatel 我试过它不工作 @RameshKumar - 然后把你的代码放在这里。还是您将[cell viewWithTag:101]
更改为[cell viewWithTag:indexPath.row]
?【参考方案2】:
你应该使用didSelectRowAtIndexPath
tableView 委托方法:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
// Change your text color here.
【讨论】:
我只在最后一行尝试过更改 用标签或 indexPath 获取您选择的单元格并更改它。【参考方案3】:默认情况下,UILabel
的 textColor
是 blackColor
。你厂牌的textColor
是怎么变成whiteColor
的?
无论如何,您可以像这样更改标签的textColor
:
label.textColor = [UIColor blackColor];
万事如意!!!
【讨论】:
我创建了 uilabel 和它的 textcolor 然后 addsubview 到 cell.contentview 现在我正在尝试更改 didselectrow 中的颜色但它没有改变,只有颜色变化出现在任何行选择的最后一行【参考方案4】:在CellForRowAtIndexPath
,使用以下代码:
选择:
label.highlightedTextColor = [UIColor blackColor];
正常:
label.textColor = [UIColor whiteColor];
【讨论】:
它在表格视图选择中不起作用 那么你需要在 didSelectRowAtIndexPath 方法中使用选中的索引,并更改 UILabel 的文本颜色。以上是关于UITableView,UILabel 文本颜色在选择行时没有改变? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
在特定行选择上更改 UITableView 所有行的标签颜色
uitableview 中的 Uilabel 在调试模拟器颜色混合层中不显示不透明且不透明
设置在 uitableview 单元格中添加的 uilabel 的文本