您好,我正在开发小型 IOS 应用程序,我在表视图中加载一些数据。所以我想做的就是将第一行设置为默认选定的行,并具有某些选定的背景颜色。所以我尝试了以下事情
// inside viewDidLoad make first row as selected row
NSIndexPath *indexPath=[NSIndexPath indexPathForRow:0 inSection:0];
[_tableView selectRowAtIndexPath:indexPath animated:YES scrollPosition:0];
// inside cellForRowAtIndexPath set some selection color
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UIView *bgColorView = [[UIView alloc] init];
bgColorView.backgroundColor = [customColor colorWithHexString:@"91979755"];
[cell setSelectedBackgroundView:bgColorView];
}
但是它不起作用。有人知道怎么做吗?需要一些帮助。谢谢。
self.indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[_tabelView selectRowAtIndexPath:self.indexPath animated:NO scrollPosition:UITableViewScrollPositionNone];
// inside cellForRowAtIndexPath set some selection color
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(self.indexPath.row==indexPath.row){
UIView *bgColorView = [[UIView alloc] init];
bgColorView.backgroundColor = [customColor colorWithHexString:@"91979755"];
[cell setSelectedBackgroundView:bgColorView];
}
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
self.indexPath=indexPath;
}
尝试这段代码,将其放入 cellForRow 方法中:
UIView *bgColorView = [[UIView alloc] init];
bgColorView.backgroundColor = [UIColor cyanColor];
[cell setSelectedBackgroundView:bgColorView];
对于特定行,将其放入 if 条件中。