UIPickerView + TableViewCell +代表和数据源
我有表视图控制器和单独的类来处理我的表视图单元。在 tableview 单元格内我有 pickerview。 如何实现位于 tableCell 类中的 pickerview 的委托和数据源,但我的委托在 tableview 控制器中起作用?
I have Table view Controller and separate class which handles for me tableviewcell. Inside the tableview cell I have pickerview.
How to implement delegate and datasource for pickerview which is in tableCell class but my delegate functions in tableview controller?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于 Swift:
在自定义表视图类中为 UIPickerView 创建插座:
在 ViewController 的“cellForRowAtIndexPath”中添加委托和数据源:
For Swift:
Create outlet for UIPickerView in custom table view class:
Add delegate and datasource in "cellForRowAtIndexPath" in ViewController:
您可以让 tableView 控制器在创建 tableview 单元格时设置一个属性,指示它是委托和数据源。
在您创建的 tableviewcell 类上,只需添加一个作为 tableview 控制器实例的属性。就像
然后在你的 cellForRowAtIndexPath 中你可以将该属性设置为 self
你可能还需要设置一些额外的属性,比如标签来区分每个单元格。我认为 tableviewcell 上的另一个属性(如 NSIndexPath)也可以。
You could have your tableView controller set a property on the tableview cells as they are created indicating that it is the delegate and datasource.
On the tableviewcell class you created just add a property that is an instance of you tableview controller. Like
Then in your cellForRowAtIndexPath you can set that property to self
You might need to also set some sort extra property like a tag to distinguish between each cell. I would think another property on the tableviewcell like an NSIndexPath would do.