【问题标题】:How do I add one UIImageView into multiple superviews without allocating multiple subviews(UIImageViews)如何在不分配多个子视图的情况下将一个 UIImageView 添加到多个超级视图中(UIImageViews)
【发布时间】:2010-01-14 18:28:44
【问题描述】:

我希望能够将一个 UIImageView 分配添加到多个 UIView。如果不分配多个 UIImageView,我该怎么做?

【问题讨论】:

    标签: iphone uiview uiimageview


    【解决方案1】:

    您不能让视图出现在多个地方。如果你尝试,那么它就会被移动。不过请注意,UIImage 是缓存的,并且在被多个 UIImageView 引用时应该得到有效处理,所以我不会太担心多个视图。

    如果这多个视图没有同时显示,您可以在 viewDidAppear 中不断移动 UIImageView。

    【讨论】:

    • 好吧,我希望 UIImageView 同时显示在两个 ImageView 中,分配多个 UIImageView 会不会是糟糕的内存管理?
    • 如果两个视图都指向同一个 UIImage,我不确定这在内存方面实际上有多糟糕。还有人知道吗?
    • 首先,正如 Nimrod 所说,一个 UIView 只能有一个 superview,即不能将一个视图添加到多个 superview。其次,UIView 是一个非常轻量级的对象,因此拥有一个 UIView 实例不是问题。第三,将相同的 UIImage 实例分配给您的 UIImageViews 以避免复制图像数据。这会将您的内存使用量降至最低。
    • 顺便说一句,如果您使用[UIImage imageNamed:...] 加载图像,那么它将在加载时缓存图像,并且随后的同名调用将返回相同的指针。
    • 它们并不重,只是骨头大。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    相关资源
    最近更新 更多