【问题标题】:Editing 100's of ImageViews - Objective C iOS编辑 100 个 ImageViews - Objective C iOS
【发布时间】:2012-04-06 21:49:01
【问题描述】:

目前在我的 iPhone 应用程序中,我有大约 200 个图像视图,我需要专门在我的代码中编辑几乎所有这些视图。我真的必须为每一个图像视图创建出口,还是有一种更简单(更快)的方法可以在我的代码中单独引用和编辑每个图像视图?

谢谢!

【问题讨论】:

  • 为什么你的图片浏览量这么多?你怎么能把它们都放在一个屏幕上?
  • UIScrollView 将是显而易见的答案。
  • UIScrollView 将是显而易见的答案,但仍有 200 个 imageViews 指向可能糟糕的设计选择

标签: objective-c ios cocoa-touch uiimageview


【解决方案1】:

使用IBOutletCollection,然后您可以将它们视为一个数组

@property (nonatomic, strong) IBOutletCollection(UIImageView) NSArray *imageViews;

您仍然需要在笔尖中建立所有连接,但您只有一个属性供它们使用

【讨论】:

    【解决方案2】:

    你可以:

    • 给他们随后的标签,并用viewWithTag: 循环作为他们的超级视图

    • 遍历所有父视图的子视图并检查[obj isKindOfClass:[UIImageView class]] 是否选定的子视图是 UIImageView

    首先想到的是这两个。

    【讨论】:

    • -1 堵嘴。 viewWithTag: 是没有经验的程序员的拐杖。
    • 感谢您的建设性反馈。
    • (无意冒犯,顺便说一句;我真的很讨厌那个 API)
    • @Alexander 我认为 Dave 想说的是,viewWithTag:——虽然是一个可行的选择——只是解决实际设计问题的一种解决方法,而且很容易让糟糕的程序设计保持不变、布局和架构决策可行。
    • 在相关新闻中,@ItaiFerber 是通灵者。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-21
    • 2013-10-28
    • 1970-01-01
    • 2011-01-26
    • 2018-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多