我在一个类中创建了一些 uiimage 视图类型的@properties,然后在我的 rootviewcontroller 中初始化了该类。
问题.h:
@property(nonatomic,strong)UIImageView *img1;
@property(nonatomic,strong)UIImageView *img2;
@property(nonatomic,strong)UIImageView *img3;
@property(nonatomic,strong)UIImageView *img4;
'视图控制器.m'
-(void)viewdidload{
questions *q1=[[questions alloc]init];
q1.img1 =[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"red.png"]];
[self.view addSubview:q1.img1];
UITapGestureRecognizer *Tap1 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(iTap:)];
[q1.img1 addGestureRecognizer:Tap1];
}
-(void)iTap:(UIGestureRecognizer *)gestureRecognizer {
// do something..
}
我知道用初始化代码填充 viewdidload 不是一个好主意。有没有更好的方法来使用类方法来实现这一点?
喜欢 :
问题.m:
+(questions * )mymethod{
questions *q1=[[questions alloc]init];
q1.img1 =[[uiimageview alloc]initwithimage [uimage imagenamed@"red.png"]];
[self.view addSubview:q1.img1];
UITapGestureRecognizer *Tap1 = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(iTap:)];
[q1.img1 addGestureRecognizer:Tap1];
return q1;
}
然后在 viewdidload 中调用该方法
视图控制器.m:
-(void)viewdidload{
[questions mymethod];
}