gpt4 book ai didi

ios6 - 在iOS7的TableViewCell中不会显示选中标记

转载 作者:行者123 更新时间:2023-12-04 13:19:39 26 4
gpt4 key购买 nike

我正在处理一个奇怪的问题。我的Apps部署目标设置为iOS6,因此我想同时支持iOS6和iOS7。

我只有一个简单的UITableView,用户可以在其中选择首选的通知声音。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath的代码是:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"CheckmarkCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
[cell setTintColor:[UIColor redColor]];
if (indexPath.section == 0){
cell.textLabel.text = [_availableSounds objectAtIndex:indexPath.row];
if (indexPath.row == _checkedSoundIndexPath.row) {
cell.accessoryType = UITableViewCellAccessoryCheckmark;
}
}
else {
// Unrelated, another settings cell
cell.accessoryType = UITableViewCellAccessoryNone;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
}
return cell;
}

我的 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath如下所示:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.section != 0) {
return;
}
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];
[[self.tableView cellForRowAtIndexPath:indexPath] setAccessoryType:UITableViewCellAccessoryCheckmark];
if (_checkedSoundIndexPath != indexPath) {
[[self.tableView cellForRowAtIndexPath:_checkedSoundIndexPath] setAccessoryType:UITableViewCellAccessoryNone];
}
_checkedSoundIndexPath = indexPath;
}

问题在于,iOS7 iPhone不会按预期显示复选标记。在iOS6 iPhone上运行相同的代码可以正常工作。我试图插入 [cell setTintColor:[UIColor redColor]];,但没有任何运气。即使我删除了所有与AccessoryType相关的代码,并在我的 Storyboard 中添加了对勾,也不会出现任何内容。请参见下面的屏幕截图(第一个是iOS6,第二个是iOS5)。

有人有主意吗?还是iOS7中的错误?

提前致谢 !

编辑:

即使我创建了一个新的简单UITableViewController,其中只有5个单元格并将Accessory设置为UITableViewAccessoryTypeCheckmark,这些Checkmark也不会出现在iOS7上。

最佳答案

我遇到了类似的问题,并且解决了该问题,更改了uitableview的色调颜色

我将InterfaceBuilder的uitable的tintcolot更改为默认颜色

或者

tableView.tintColor =  [UIColor blackColor];

关于ios6 - 在iOS7的TableViewCell中不会显示选中标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19249389/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com