Iphone 如何添加一个“;viewDidLoad";UIImageView子类的方法是什么?
我正在尝试将手势识别器添加到名为“MenuItem”的类中,该类是UIImageView的子类 我使用故事板来布置UIImageView的位置,然后将它们的类分配给MenuItem。与其通过故事板在每个菜单项上添加UIPangestureRecognitor,我更愿意用代码来实现Iphone 如何添加一个“;viewDidLoad";UIImageView子类的方法是什么?,iphone,ios,ipad,Iphone,Ios,Ipad,我正在尝试将手势识别器添加到名为“MenuItem”的类中,该类是UIImageView的子类 我使用故事板来布置UIImageView的位置,然后将它们的类分配给MenuItem。与其通过故事板在每个菜单项上添加UIPangestureRecognitor,我更愿意用代码来实现 所以我想我应该在我的菜单项中添加一些“viewDidLoad”类,但我不确定如何添加。任何想法都将不胜感激。谢谢您可能只想在UIView的相应init方法中添加识别器。在这种情况下,您是从InterfaceBuilde
所以我想我应该在我的菜单项中添加一些“viewDidLoad”类,但我不确定如何添加。任何想法都将不胜感激。谢谢您可能只想在UIView的相应init方法中添加识别器。在这种情况下,您是从InterfaceBuilder中创建它们的,因此要覆盖的适当方法是:
- (id)initWithCoder:(NSCoder *)coder {
self = [super initWithCoder:coder];
if (self) {
// add gesture recognizers
}
return self;
}
如果手势识别器需要调用视图控制器上的方法,这将不起作用。如果父视图控制器处理该操作,您可以在viewDidLoad中添加一些代码来搜索MenuItem的所有实例并添加识别器。当然,这是假设每个MenuItem的操作方法都是相同的。这对我的代码来说很好。我最初做了您刚才提到的事情,我在viewDidLoad中使用for循环在我的ViewController子视图中查找MenuItem的实例,然后对每个实例运行安装方法。不过initWithCoder要干净得多。谢谢@马克亚当斯-为什么?我遇到了这种情况