【问题标题】:One UIView to rule them all, One UIView to bind them一个 UIView 来统治它们,一个 UIView 来绑定它们
【发布时间】:2012-11-08 21:23:47
【问题描述】:

我遇到了两个具有相同代码的 UIView 的问题:

两个主要的 UIView:

UIView *firstView;
UIView *secondView;
UIView *thirdView;

self->thirdView = [[UIView alloc]initWithFrame(100,100,100,100)];

后面的代码:

self->firstView = [[UIView alloc]initWithFrame(0,0,200,200)];
self->secondView = [[UIView alloc]initWithFrame(0,0,200,200)];

然后在我做的代码中:

[self->firstView addSubView:self->thirdView];
[self->secondView addSubView:self->thirdView];

代码中发生的情况是,其中一个视图会以某种方式错过thirdView,我想知道这是否与我使用相同的thirdView这一事实有关。

如果是这样,thirdView 很重要,我需要在两个视图中都使用它,我该怎么做?

【问题讨论】:

  • ...一个视图将他们全部带入并在黑暗中束缚他们。

标签: ios xcode memory-management uiview


【解决方案1】:

问题是视图只能有一个父视图。如果您尝试将视图添加到第二个父视图,它将从第一个视图中删除,然后添加到第二个视图。

您不能同时将thirdView 添加到firstViewsecondView。相反,您需要创建两个 thirdView 实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    • 2011-05-10
    • 2013-01-20
    相关资源
    最近更新 更多