gpt4 book ai didi

objective-c - iOS:如何使用按钮来切换 Tableview 行?

转载 作者:行者123 更新时间:2023-11-29 13:47:29 25 4
gpt4 key购买 nike

我正在制作一个应用程序,其中有一个在应用程序启动时加载的 Tableview。单击一行后,我会看到一个带有导航 Controller 和工具栏的 View 。在工具栏上,我制作了两个用于后退和前进的按钮(后退箭头和前进箭头)。我如何编写这些按钮以选择表格的下一行和上一行(返回上一行,前进下一行)?

最佳答案

您可能希望让您的 TableView Controller 成为详细信息 View Controller 的委托(delegate),然后定义委托(delegate)协议(protocol)以在这些按钮被按下时通知委托(delegate)人。这样 TableView Controller 就可以对 TableView 做任何它需要做的事情。

一种方法:

@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

关于objective-c - iOS:如何使用按钮来切换 Tableview 行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6725926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com