【问题标题】:iOS UITableView with UIPickerViewiOS UITableView 与 UIPickerView
【发布时间】:2013-02-27 11:58:43
【问题描述】:
我需要创建一个包含多个列的UITableView。在那里,表格的第一行会有一个常量块。当用户滚动表格时,将选择该块中的行。基本上它是一个带有UIPickerView 的表格视图。
我希望我能够上传一张图片来解释这一点。
我不知道该怎么做。这是UITableView 和选择器视图的混合体。我可以将其实现为带有多列的选择器视图(该块充当自定义选择器)吗?
请帮忙。
谢谢,
~维沙尔
【问题讨论】:
标签:
ipad
ios5
uitableview
uipickerview
【解决方案1】:
您可以使用 UITableView 方法获取顶行中表示的数据的索引:
- (NSIndexPath *)indexPathForRowAtPoint:(CGPoint)point
点在哪里 (CGPoint){0,0}(或与您的块/行 1 相交的某个点)
或
- (NSIndexPath *)indexPathForRowsInRect:(CGRect)rect
rect 与你“阻塞”相关的地方。
您需要管理滚动,以便表格停止时,行的顶部与块或表格顶部对齐。这个 UITableView 方法可能会很有帮助,你应该在你的 tableview 在滚动后停止时触发它:
- (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath
atScrollPosition:(UITableViewScrollPosition)scrollPosition
animated:(BOOL)animated
以UITableViewScrollPositionTop为滚动位置
我希望您希望每列独立滚动。在这种情况下,每列需要一个 tableView。然后,您只需要确保您知道哪个 tableView 在您各自的委托和数据源方法中发送消息(易于管理,因为指向 tableView 的指针是这些方法中发送的第一个参数)。