Uiview UIImageView的触摸事件不适用于iOS中的所有图像
我把imgaes放在下面 在ListView.m中Uiview UIImageView的触摸事件不适用于iOS中的所有图像,uiview,ios6,uiimageview,touch,Uiview,Ios6,Uiimageview,Touch,我把imgaes放在下面 在ListView.m中 -(void)viewDidLoad() { int j=5; for (int i=0; i<[po_id_array count]; i++) { ViewForTickImage *tickimage=[[ViewForTickImage alloc]initWithFrame:CGRectMake(5, j, 35, 35)];
-(void)viewDidLoad()
{
int j=5;
for (int i=0; i<[po_id_array count]; i++) {
ViewForTickImage *tickimage=[[ViewForTickImage alloc]initWithFrame:CGRectMake(5, j, 35, 35)];
NSLog(@"----------%d",j);
j=j+17;
[tickimage setTick:FALSE];
[tickimage setTag:i];
// [tickimage setDelegate:self];
[self.view addSubview:tickimage];
}
}
在ViewForTickImage.m文件中,代码为:
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
currentImg = [[UIImageView alloc]initWithFrame:frame];
[currentImg setContentMode:UIViewContentModeScaleAspectFit];
UIImage *img=[UIImage imageNamed:@"image_unselect.png"];
[currentImg setImage:img];
[self addSubview:currentImg];
}
return self;
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"image selected");
}
它显示图像列。触摸事件仅适用于第一个图像。如何为所有图像触发触摸事件。请给出解决方案。尝试使用UIbutton,而不是使用imageView,并将图像添加到按钮的图像属性。您可以用一种简单的方式识别单击。 使用按钮的标记属性,可以识别单击了哪个按钮
UIButton *imageButton1;
imageButton1.tag=buttonIdentifier;
[imageButton1 addTarget:self action:@selector(imageSelected:) forControlEvents:UIControlEventTouchUpInside];
我也尝试使用按钮,但相同的目标事件也适用于第一个按钮,而不是所有按钮。请对此提出建议。将相同的目标添加到所有按钮和目标中,根据按钮标记值执行所需的操作。为每个按钮设置不同的标记(int i=0;i-(void)imageSelected:(id)sender{NSLog(@“%d image selected”,[sender tag]);},然后问题也没有解决。然后它也不起作用。你能建议我哪里做错了吗
UIButton *imageButton1;
imageButton1.tag=buttonIdentifier;
[imageButton1 addTarget:self action:@selector(imageSelected:) forControlEvents:UIControlEventTouchUpInside];