首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iOS:如何使用按钮切换Tableview行?

iOS:如何使用按钮切换Tableview行?
EN

Stack Overflow用户
提问于 2011-07-18 02:39:44
回答 1查看 511关注 0票数 1

我正在制作一个应用程序,其中我有一个Tableview,当应用程序启动时加载。单击一行之后,我会进入一个带有导航控制器和工具栏的视图。在工具栏上,我制作了两个后退和前进按钮(一个后退箭头和一个前进箭头)。如何编写这些按钮的代码来选择表的下一行和上一行(后退到上一行,前进到下一行)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-18 02:42:46

您可能希望将表视图控制器设置为细节视图控制器的代理,然后定义一个代理协议,以便在按下这些按钮时通知代理。这样,表视图控制器就可以对表视图做任何它需要做的事情。

一种方法是:

代码语言:javascript
复制
@implementation MyTableViewController
...
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)p {
    MyDetailViewController *vc = [[MyDetailViewController alloc] initWithRow:p.row];
    // configure vc
    vc.delegate = self;
    [self.navigationController pushViewController:vc animated:YES];
    [vc release];
}

- (void)myDetailViewControllerDidSelectPrevious:(MyDetailViewController *)vc {
    // use vc.row-1 to update the view controller or push a new one
}
- (void)myDetailViewControllerDidSelectNext:(MyDetailViewController *)vc {
    // use vc.row+1 to update the view controller or push a new one
}
@end

@protocol MyDetailViewControllerDelegate
- (void)myDetailViewControllerDidSelectPrevious:(MyDetailViewController *)vc;
- (void)myDetailViewControllerDidSelectNext:(MyDetailViewController *)vc;
@end
@implementation
...
- (void)nextButtonPressed:(id)sender {
    [self.delegate myDetailViewControllerDidSelectNext:self];
}
- (void)previousButtonPressed:(id)sender {
    [self.delegate myDetailViewControllerDidSelectPrevious:self];
}
@end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6725926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档