我正在使用数据填充UITableViewController
,并且需要禁用一些已创建的单元格,而其他一些单元格则留有详细的附件按钮。我需要做的是禁用那些带有详细配件(他们的选择),但保持此详细信息按钮有效以获取一些信息。
答案 0 :(得分:1)
扩展mobiletest给出的答案,我做了类似的事情。
我使用附件
的披露指示器类型创建了单元格cell.accessoryType = UITableViewCellAccessoryNone;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
在UITableViewControllerDelegate方法
中- (UITableViewCell*) tableView: (UITableView*) tableView cellForRowAtIndexPath: (NSIndexPath*) indexPath
我在每个单元格上创建了一个自定义按钮。为了准确识别选择哪个单元格的按钮,SO上的answer帮助了我。
您可以选择不更改单元格的selectionStyle,但我建议您这样做,以便应用程序看起来更好,并且单元格不会显示任何暗示可以选择单元格的内容,这将使其更容易用户的可用性条款。
或者,您可以检查方法
- (void) tableView: (UITableView*) tableView didSelectRowAtIndexPath: (NSIndexPath*) indexPath
您可以选择单元格并检查单元格的accessoryType并放置逻辑。
UITableViewCell *cell = (UITableViewCell *)[(UITableView *)self.view cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryDisclosureIndicator)
{
//Your logic here
}
但这意味着您的整个单元格都可以选择(如果选择的话,公开按钮将不起作用),在这种情况下,这意味着您无法自定义您的公开按钮。此外,由于您的整个单元格是可选择的,只要用户点击单元格,您的逻辑也将运行,从问题的角度来看,这听起来不像您想要的功能,但我可能错了。 :)
查看哪些适合您。希望这有帮助!
答案 1 :(得分:0)
是否要隐藏某些行中的详细配件按钮,或禁用没有详细配件按钮的功能。 要禁用此功能,您可以在 didSelectRowAtIndexPath 中包含代码。检查是否有详细的配件按钮,如果有,那么什么也不做。