更改 uitableview 单元格删除按钮背景颜色
Posted
技术标签:
【中文标题】更改 uitableview 单元格删除按钮背景颜色【英文标题】:Change uitableview cell delete button background color 【发布时间】:2014-07-17 07:48:28 【问题描述】:我已经在这个link看到了怎么做。
我在我的视图控制器中跟踪并实现了它,它有表格视图和其他子视图。 Tableview 单元格由自定义单元格实现。
问题是,我从来没有看到这个“UITableViewCellDeleteConfirmationView”来改变 UITableView 单元格删除按钮颜色的颜色。我在ios7上写。那么,是不是已经不一样了?还是我做错了什么?
-(void)viewWillLayoutSubviews
[super viewWillLayoutSubviews];
NSArray *subviews = [self.view subviews];
// Return if there are no subviews
if ([subviews count] == 0) return;
for (UIView *subview1 in subviews)
NSLog(@"subview1 > %@",NSStringFromClass([subview1 class]));
for(UIView *subview2 in subview1.subviews)
NSLog(@"subview2 > %@",NSStringFromClass([subview2 class]));
for(UIView *subview3 in subview2.subviews)
NSLog(@"subview3 > %@",NSStringFromClass([subview3 class]));
for(UIView *subview4 in subview3.subviews)
NSLog(@"subview4 > %@",NSStringFromClass([subview4 class]));
for(UIView *subview5 in subview4.subviews)
NSLog(@"subview5 > %@",NSStringFromClass([subview5 class]));
for(UIView *subview6 in subview5.subviews)
NSLog(@"subview6 > %@",NSStringFromClass([subview6 class]));
//
// if ([NSStringFromClass([subview2 class]) isEqualToString:@"UITableViewCellDeleteConfirmationView"])
//
// //your color
// ((UIView*)[subview2.subviews firstObject]).backgroundColor=[UIColor blueColor];
//
//
//
【问题讨论】:
专业提示:如果您想要递归的子视图列表,请设置断点并在 lldb 中输入:po [self.view recursiveDescription]
viewWillLayoutSubviews 是在自定义单元类中实现的吧?
@jithinroy viewWillLayoutSubviews 没有调用我的自定义单元格类。我还在自定义单元格中检查 willTransitionToState,它也没有给我 UITableViewCellDeleteConfirmationView。
【参考方案1】:
尝试使用您的自定义单元格类。
- (void)layoutSubviews
[super layoutSubviews];
for (UIView *subview in self.subviews)
for(UIView *subview2 in subview.subviews)
if ([NSStringFromClass([subview2 class]) isEqualToString:@"UITableViewCellDeleteConfirmationView"])
((UIView*)[subview2.subviews firstObject]).backgroundColor=[UIColor yellowColor];
【讨论】:
以上是关于更改 uitableview 单元格删除按钮背景颜色的主要内容,如果未能解决你的问题,请参考以下文章
UITableView 选择单元格时所有组件都更改了背景颜色
如何更改 UITableViewCell 编辑按钮背景颜色?
在 Xamarin IOS 的 UITableview 中更改滑动以删除按钮高度
多选模式下的 UITableView 删除选定单元格中所有子视图的背景颜色