我有一个 UITableview,对于我点击的每一行,都必须打开另一个 UITableview。此时我已经创建了一个 UITableview 并添加了元素和点击手势识别,但我仍然不知道如何为我点击的每一行打开另一个视图。
顺便说一句:我正在使用故事板。
利用:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
在 tableView 的委托中,然后您可以使用
[self performSegueForIdentifer:storyboardSegueIdentifier];
如果您设置故事板 segue 以根据选择的行移动到另一个视图或以模态方式呈现另一个视图
[self presentViewController]
.
或者如果您使用的是导航控制器,您可以这样做
[[self navigationController] popToViewController:viewControllerToShow];
如果您希望有一个可展开/可折叠的表格视图效果,您可以查看以下链接To create expandable table view in IOS 5.0 或http://developer.apple.com/library/ios/#samplecode/TableViewUpdates/Introduction/Intro .html
如果您希望通过点击单元格进行正常导航,那么这可能很简单。您所要做的就是在当前控制器中推送一个新控制器。我建议你通过这个http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.html
请更具体。你想“打开”一个新的UITableView
“下方”点击行(如嵌套UITableViews
)或移动到另一个 UIViewController 与其他 UITableView。如果你想实现后者,只需使用 UINavigationViewController's pushViewController
in
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewDelegate
方法。
为了实现后一种效果,您必须使用更复杂的代码来实现更复杂的行为,但幸运的是,我们的开发人员提供了一些令人惊叹的开源库(例如 SDNestedTable)。如果您使用它们,请不要忘记遵守许可证中指定的规则。