2011-02-08 66 views
0

现在用在CellForRowAtIndext所述的UIImageView如像下面如何在表格视图单元格图像中使用uicontrolstate函数?

int k=5; 
for(int i=1; i<=3;i++) { 

    btn_img=[[UIImageView alloc]initWithFrame:CGRectMake(k,50,90, 40)]; 
    btn_img.image = [UIImage imageNamed:[image_array1 objectAtIndex:indexPath.row]]; 
    btn_img.tag=i; 
    [cell.contentView addSubview:btn_img]; 
    k=k+95; 
    [btn_img release]; 

}

通过此I可以能够显示在一排图像3。 但每幅图像都不相同。如果特定的图像被点击。我如何识别特定图像ID?

for(int i=0; i<=2;i++) { 
if (m<[image_array1 count]) { 
    btn_img=[[UIButton alloc]initWithFrame:CGRectMake(k,5,90, 50)]; 
    UIImage *buttonImage= [UIImage imageNamed:[image_array1 objectAtIndex:m]]; 
    [btn_img setBackgroundImage:buttonImage forState:UIControlStateNormal]; 
    btn_img.tag=i; 
    UITapGestureRecognizer *tap_gr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; 
    [tap_gr setNumberOfTapsRequired:1]; 
    [btn_img addGestureRecognizer:tap_gr]; 
    [tap_gr release]; 
    [cell.contentView addSubview:btn_img]; 
    k=k+95; 
    [btn_img release]; 
    m++; 
} 
} 

我很困惑如何在didselectrowatindexpath中写入。

谢谢!

Senthilkumar

回答

0

您可以使用UITapGestureRecognizer。如下所示将轻拍手势识别器添加到btn_img

UITapGestureRecognizer *tap_gr = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; 
[tap_gr setNumberOfTapsRequired:1]; 
[btn_img addGestureRecognizer:tap_gr]; 
[tap_gr release]; 

在你的柄敲击的方法,你可以访问被窃听图像视图的tag,并做必要的行动。

- (void)handleTap:(id)sender { 

    NSLog(@"Tapped ImageView tag : %d", [sender tag]); 
} 
+0

谢谢西蒙,我尝试这种方式正确显示图像,但我尝试将图像单元格向上滚动显示为隐藏图像。我做的事? – Senthilkumar 2011-02-09 04:40:07

0

您可以使用UICustomButtons为purpose.Set按钮的背景图片,设置按钮的ID,而分配图像特定button.So当一个特定的按钮被窃听,该按钮的id可以被识别。写一个方法来执行所需的操作。

干杯

+0

Hai Aditya我也用UIBUTTON。但我无法选择特定的图像。它选择该行中的所有图像。所以请给出关于如何选择一个单元格中的特定图像编码的想法? – Senthilkumar 2011-02-08 13:02:32

相关问题