cell.accessoryType = UITableViewCellAccessoryDe​​tailButton下一步是什么?

时间:2014-08-03 14:46:59

标签: ios objective-c ios7

iOS仍然相当新。我已经设法编写了一个基本应用程序来显示文档列表/表格。我已经包括:

cell.accessoryType = UITableViewCellAccessoryDe​​tailButton;

在圆圈按钮中显示蓝色i,我猜这可以用来执行某种操作。

我现在要做的是,点击后,显示一个后续屏幕,其中包含有关文档,按钮,添加,删除功能,日期,文件大小等信息...

这是通过segue还是其他方法完成的?

作为新手,我不确定下一步是什么。如果我知道为了进入下一个scree我必须采取哪些步骤,我可以在网上搜索如何执行任何给定步骤。

感谢您的帮助

3 个答案:

答案 0 :(得分:2)

accessoryButton触发它自己的委托方法,与行选择不同,称为:

- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath

将该方法添加到您的委托,然后执行vc转换。有几种方法可以进行转换,大多数常见方法是discussed here ...

答案 1 :(得分:1)

首先,欢迎来到iOS开发社区!

为了做到这一点,我会使用segue到你可以设计的细节视图。使用didSelectRowAtIndexPath在表中选择行时,可以将@property设置为所选数组中的对象:self.selectedObject = self.tableviewarray objectAtIndex:indexPath.row;然后在prepareForSegue方法中,您可以获取目标视图控制器并执行destinationViewController.myObject = self.selectedObject;现在详细视图知道要显示信息的对象!

答案 2 :(得分:0)

您需要实现委托方法

-tableView:(UITableView*) didSelectRowAtIndexPath:(NSIndexPath*)

并相应地处理该回调中的行点击。

一个例子是这样的:

-tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath {
    YourObject *theModelForRow = [_itemList objectAtIndex:indexPath.row];

    YourViewController *someNewViewController = [YourViewController viewControllerWithModel:theModelForRow];
    [self.navigationController pushViewController:someNewViewController animated:YES];
}