Ios7 禁用单元格,但保持细节附件处于活动状态

Ios7 禁用单元格,但保持细节附件处于活动状态,ios7,uitableview,accessorytype,Ios7,Uitableview,Accessorytype,我正在用数据填充UITableViewController,一些创建的单元格需要禁用,而另一些单元格则保留了“详细信息附件”按钮。我需要做的是禁用带有详细附件(其选择)的按钮,但保持此详细按钮处于活动状态以获取一些信息。是否要在某些行中隐藏详细附件按钮或禁用没有详细附件按钮的功能。 要禁用该功能,您可以在中选择Rowatindexpath中的代码。检查是否有详细附件按钮,如果有,则不要做任何事情。扩展mobiletest给出的答案,我也做了类似的事情 我为附件创建了具有泄漏指示器类型的单元格 c

我正在用数据填充
UITableViewController
,一些创建的单元格需要禁用,而另一些单元格则保留了“详细信息附件”按钮。我需要做的是禁用带有详细附件(其选择)的按钮,但保持此详细按钮处于活动状态以获取一些信息。

是否要在某些行中隐藏详细附件按钮或禁用没有详细附件按钮的功能。
要禁用该功能,您可以在中选择Rowatindexpath中的代码。检查是否有详细附件按钮,如果有,则不要做任何事情。

扩展mobiletest给出的答案,我也做了类似的事情

我为附件创建了具有泄漏指示器类型的单元格

cell.accessoryType = UITableViewCellAccessoryNone;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
在UITableViewControllerDelegate方法中

- (UITableViewCell*) tableView: (UITableView*) tableView cellForRowAtIndexPath: (NSIndexPath*) indexPath
我在每个单元格上创建了一个自定义按钮。为了准确地确定选择了哪个单元格上的哪个按钮,这个按钮对我很有帮助

您可以选择不更改单元格的selectionStyle,但我建议您这样做,这样应用程序看起来会更好,并且单元格不会显示任何提示可以选择单元格的内容,这将使用户在可用性方面更加容易


或者,您可以在方法中进行检查

- (void) tableView: (UITableView*) tableView didSelectRowAtIndexPath: (NSIndexPath*) indexPath
您可以选择单元格,检查单元格的accessoryType并放置逻辑

UITableViewCell *cell = (UITableViewCell *)[(UITableView *)self.view cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryDisclosureIndicator) 
{ 
//Your logic here 
}
但这将意味着您的整个单元格都是可选择的(如果未选择,则“披露”按钮将不起作用),在这种情况下,这将意味着您无法自定义“披露”按钮。此外,由于您的整个单元格都是可选择的,因此只要用户单击单元格,您的逻辑也将运行,从问题判断,这听起来不像您想要的功能,但我可能错了。:)

看看哪个适合你。希望这有帮助