【问题标题】:how to tell which image of a set was tapped on in a UITableViewCell如何判断在 UITableViewCell 中点击了一组图像
【发布时间】:2012-03-30 04:50:02
【问题描述】:

对于我的一个表格视图,某些单元格中有图像,并且每个单元格中可能有多个图像。现在,当用户点击图像时,我想调出图像查看器来显示完整图像。但是我很难找出最好的方法来知道哪张照片被点击了。我将它们创建为 UIImageView。有什么建议吗?

【问题讨论】:

    标签: iphone uitableview uiimageview


    【解决方案1】:

    为每个单元格的图像设置标签。

    在.h中声明

     NSInteger TagValue ;
    

    在.m ViewDidLoad

     TagValue = 0;
    

    在 CellForRowAtIndexPath :

    TagValue++;
    
    image1.tag = TagValue;
    
    TagValue++;
    
    image2.tag = TagValue;
    

    选择它,现在你有标签值,你可以得到特定的选定图像。

    并从数组中获取图像

    image1.image = [array objectAtIndex:image1.tag]; 
    

    您将获得各自的图像。

    【讨论】:

      【解决方案2】:

      为imageview设置标签,您可以轻松找到点击的图像

      【讨论】:

      • 这仅通过设置标签不起作用。你必须考虑什么是标签。如果第 1 行有 3 张图片,第 2 行有 2 张图片,那么图片标签是什么?
      【解决方案3】:

      为特定单元格的每个图像设置标签,然后您可以通过它们的标签访问这些图像

      【讨论】:

        【解决方案4】:

        您可以做的是,而不是使用 UIImageView ,而是使用服装按钮并设置该服装按钮的图像并为所有按钮提供不同的标签...每个单元格将具有一组具有不同标签的按钮,并通过分配单个选择器到所有按钮,您可以轻松确定单击了哪个图像。

        【讨论】:

          【解决方案5】:

          您可以使用其他答案中建议的标签,也可以使用 switch case

          在方法中-

          -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
          
          switch(indexPath.section) {
          
              case 0:{
          //set the _imagename = @"Something"
          break;
          }
              case 1:{
          //set the _imagename = @"Something else"
          break;
          }
          }
          

          希望对你有帮助

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-11-20
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-03-23
            • 2022-08-19
            • 1970-01-01
            相关资源
            最近更新 更多