现在我需要实现原型单元,其中包含一些控件,如分段开关,开关或任何其他.问题是我无法找到触发的动作是如何实现的以及它们与控件的关系.此外,我还没有找到任何关于如何在单个UItableVIEwController中实现不同原型单元的示例.
我知道这是一个普遍的问题,但我会在这里感谢一些指点.也许有人知道一些文档,教程等等.好吧,任何帮助都可以,
事先提醒.
解决方法 我花了一段时间才了解如何使用原型细胞.如果要访问原型单元格内的用户界面元素,则必须创建UItableVIEwCell的子类并将其分配给Interface Builder中的原型单元格.然后你必须手动定义IBOutlet属性,例如:
@interface OptionSwitchCell : UItableVIEwCell@property (weak,nonatomic) IBOutlet UISwitch* switchControl;@end
之后,您可以通过控制 – 从元素拖动到辅助视图中的属性定义来连接界面元素.
相反,IBActions可以在拥有的VIEw Controller中定义.您可以控制 – 从界面元素拖动到VIEw Controller头文件并创建 *** 作.在动作实现中,您可能想知道哪个单元格正在触发 *** 作.我是这样做的:
@implementation SometableVIEwController- (IBAction)toggleActivity:(ID)sender { OptionSwitchCell* cell = (OptionSwitchCell *)[sender supervIEw].supervIEw; NSIndexPath *indexPath = [self.tableVIEw indexPathForCell:cell]; ...}@end
查找相应单元格和索引路径的另一种解决方案(通过jrturton):
- (IBAction)toggleActivity:(ID)sender { CGPoint hitPoint = [sender convertPoint:CGPointZero toVIEw:self.tableVIEw]; NSIndexPath *hitIndex = [self.tableVIEw indexPathForRowAtPoint:hitPoint]; OptionSwitchCell* cell = (OptionSwitchCell *)[self.tableVIEw cellForRowAtIndexPath:hitIndex]; ...}
虽然这有点古怪,但到目前为止我还没有找到更好的解决方案.希望有所帮助.
总结以上是内存溢出为你收集整理的内置UIControl的iOS原型单元全部内容,希望文章能够帮你解决内置UIControl的iOS原型单元所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)