在 UiTableViewCell 上设置时,DisclosureButton Indicator 或任何类型的附件类型似乎都没有出现

Posted

技术标签:

【中文标题】在 UiTableViewCell 上设置时,DisclosureButton Indicator 或任何类型的附件类型似乎都没有出现【英文标题】:DisclosureButton Indicator or Any kind of Accessory Type doesn't seem to appear when set on a UiTableViewCell 【发布时间】:2012-11-02 19:10:33 【问题描述】:

这是我最近注意到的一件奇怪的事情。即使在使用以下代码设置了附件类型后,我也无法看到我的 UITableView 单元的附件类型

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

static NSString *CellIdentifier = @"LocationCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) 
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier: CellIdentifier] autorelease];


if (indexPath.section == 0) 
    cell.textLabel.text = @"Move to a New Location";
else
    cell.textLabel.text = [self.locArray objectAtIndex:indexPath.row];

cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
return cell;
    

我设置的配件类型无关紧要。它始终只显示单元格中的文本标签,但没有按钮。我错过了什么吗?请注意,这不是我第一次使用 UITableViewCell。我之前从未遇到过这个问题。同时,我正在 ios6 上对此进行测试,并在 iPad 模拟器和它自己的设备上确认了这种行为。

【问题讨论】:

能否请您以官方方式而不是评论方式写下您的答案?然后你可以把它标记为正确,人们就会知道这个问题已经解决了 如果可以的话,我会的 :) 我刚加入这个网站,所以我无法接受自己的答案。要是所有这些事情都这么容易就好了! :D 【参考方案1】:

好吧!我已经解决了这个问题。我的 Viewcontroller 最初是 UIViewController 的子类,而不是 UITableViewController。我这样做是想我会在主视图中添加额外的视图,这与 TableView 无关。然后我将其更改为 UITableViewController ,瞧,一切都很完美。但这是 UiViewController 和 UitableViewController 提供的灵活性之间的权衡,因为我现在必须将这些额外的视图添加到 TableView 的 headerview 或 footerview 中。尽管如此,我必须以任何方式处理它。我希望这会对某人有所帮助。

【讨论】:

以上是关于在 UiTableViewCell 上设置时,DisclosureButton Indicator 或任何类型的附件类型似乎都没有出现的主要内容,如果未能解决你的问题,请参考以下文章

在普通样式表视图上设置 UITableViewCell 背景颜色?

UITableviewCell上添加button,按钮的normal或selected状态显示不正常的可能原因。

UITableViewCell 的背景设置在滚动时重置

iOS 13 UITableViewCell |子视图被剪掉

如何在 UITableViewCell 上使用 CAGradientLayers

自动布局 UITableViewCell