【问题标题】:How to set image for UIImageView which is contained in NSMutableArray?如何为 NSMutableArray 中包含的 UIImageView 设置图像?
【发布时间】:2011-11-22 17:18:51
【问题描述】:

我有包含 UIImageViews 的 NSMutableArray 和包含 UIImages 的 NSArray。数组大小相等。我需要将第二个数组中的图像设置为第一个数组。在循环中实现它会非常方便,例如:

for (int i = 0;i < firstArray.count;i++)
  [firstArray objectAtIndex:i].image = [secondArray objectAtIndex:i];

但这不会编译。它说“在“id”类型的对象上找不到属性“图像”。是否有可能以某种方式在循环中实现它?

【问题讨论】:

    标签: objective-c cocoa-touch uiimageview uiimage nsmutablearray


    【解决方案1】:

    在访问其属性之前,您需要从 id 类型转换为 UIImageView。使用以下...

    for (int i = 0;i < firstArray.count;i++)
      ((UIImageView *)[firstArray objectAtIndex:i]).image = [secondArray objectAtIndex:i];
    

    【讨论】:

      【解决方案2】:

      或者,如果添加所有这些圆括号使其更难阅读,(就我个人而言,它太吸引我的眼球)你可以这样做:

      UIImageView *imageView = nil;
      
      for (int i = 0;i < firstArray.count;i++) {
         imageView = [firstArray objectAtIndex:i];
         imageView.image = [secondArray objectAtIndex:i];
      }
      

      for (int i = 0;i < firstArray.count;i++)
          [[firstArray objectAtIndex:i] setImage:[secondArray objectAtIndex:i]];
      

      【讨论】:

      • 如何在 NSarray 目标 c 中添加 UIimageview 对象
      猜你喜欢
      • 1970-01-01
      • 2020-04-15
      • 1970-01-01
      • 1970-01-01
      • 2014-03-12
      • 1970-01-01
      • 2011-02-19
      • 1970-01-01
      • 2020-04-13
      相关资源
      最近更新 更多