在iOS 7上使用此代码会导致分隔符视图被覆盖或缩短:
cell.accessoryType = UITableViewCellAccessoryCheckmark;
如何修复分隔符视图?
我正在使用原型单元格,但我不是它们的子类.
[编辑]
以下是cellForRowAtIndexPath的相关代码:
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier forIndexPath:indexPath]; if (indexPath.section == kDefaultViewSection){ NSArray *defaultViewNames = @[LQSettingsSentenceView,LQSettingsFullTextView,LQSettingsFlashcardsView]; NSString *preferredViewName = [LQSettings valueForKey:LQSettingsPreferredLessonView]; if ([defaultViewNames[indexPath.row] isEqualToString:preferredViewName]){ cell.accessoryType = UITableViewCellAccessoryCheckmark; } else { cell.accessoryType = UITableViewCellAccessoryNone; } } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ [tableView deselectRowAtIndexPath:indexPath animated:YES]; if (indexPath.section != kDefaultViewSection){ return; } // Just turn all checks off for a minute for (int x=0; x<3; x++) { NSIndexPath *ip = [NSIndexPath indexPathForRow:x inSection:kDefaultViewSection]; UITableViewCell *cell = [tableView cellForRowAtIndexPath:ip]; cell.accessoryType = UITableViewCellAccessoryNone; } UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; cell.accessoryType = UITableViewCellAccessoryCheckmark; }