在iPhone / iPad的常规设置中,他们有一个显示'>'的itms列表在右边。按下时,它会滑动到另一个视图。
这是来自对象调色板的控件吗?如果是这样,哪个控制?如果没有,那么实现类似功能的最佳方式是什么。
我在Apple Dev网站上查看了很多样本,但我找不到这样的控件,或者至少我不记得看到它了。
对这个愚蠢问题的任何帮助表示赞赏!! - :)
由于
答案 0 :(得分:4)
每当您看到一个可滚动的项目列表视图时,您正在查看UITableView,并且列表中的每个项目都是使用UITableViewCell定义的。要使UITableViewCell显示'>',您只需设置其' accessoryType' to' UITableViewCellAccessoryTypeDisclosureIndicator'。
这只会绘制'>',它不会在另一个视图中滑动。但是,当用户选择UITableViewCell时,它将在其委托上调用一个函数:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
在这里,您将编写在新视图控制器中滑动的逻辑(使用UINavigationController' s -pushViewController:animated :)。
要了解有关如何使用UITableView的更多信息,我强烈建议您阅读UITableView programming guide。它还链接到带有示例代码的可下载项目。
答案 1 :(得分:1)
您可能意味着UITableViewController和UINavigationController的组合。创建一个新的“基于导航的应用程序”,以查看它是如何工作的&玩得开心。 :)
两者都可以在控制器部分的IB中找到。
答案 2 :(得分:0)
您正在寻找的控件是具有披露指标的UITableview。要获取公开指示符(灰色V形或蓝色按钮),请为每个tableview单元格设置editingAccessoryType。这会给你一个'>'在tableview中每个项目的右侧。
当您点击其中一个'>'时,tableview的委托将调用此方法:
- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
这与您在该行上的任何其他位置点按时调用的方法不同:
- (void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath
正如dominostars所说,你创建另一个视图并使用UIViewController的pushViewController方法从右侧滑入另一个视图。