如何更改UIPickerView中的组件数量?

时间:2011-08-02 08:40:55

标签: iphone ios uipickerview

我有一个UITableView用于不同的数据。当用户选择一行时,我会弹出一个UIPickerView让用户选择一些值。我已经实现了numberOfComponentsInPickerView DataSource方法来返回UITableView中不同行的组件数。实际上他们都是1。

但现在,我将从互联网上下载更多数据,并在UITableView中添加更多行。完成下载后我打电话给[pickerView reloadAllComponents]。我预计会调用numberOfComponentsInPickerView,因此我可以在选择器视图中为UITableView中的新行添加更多组件。但它不起作用。

我该怎么做?感谢。

2 个答案:

答案 0 :(得分:5)

在IOS 5设备上运行的XCode 4.2中,我能够获取[pickerView reloadAllComponents]来更改UIPickerView中的组件数。

它的工作原理与您原先预期的完全相同。调用reloadAllComponents导致调用numberOfComponentsInPickerView方法。

答案 1 :(得分:1)

我找到了解决问题的方法。我没有尝试使UIPickerView重新加载并动态更改组件数量,而是使用两个UIPickerView,一个有1个组件,另一个有两个。当用户在tableview中选择不同的数据行时,我将在这两者之间切换。

希望如果其他人有类似的需求,这会有所帮助。