iOS UIView在整个代码中添加和删除子视图
问题描述:
我的应用程序中有一条蓝线,用于显示人造地平线。 我希望能够在代码的不同部分(.m)中显示和删除它。 我可以通用声明它(lineViewHorizon)吗?iOS UIView在整个代码中添加和删除子视图
目前我只能使它出现/消失只在代码的相同部分/方法。
我认为这可以做到?
UIView *lineViewHorizon = [[UIView alloc] initWithFrame:CGRectMake(0, pageTopMargin+inthorizon, self.view.bounds.size.width, 2)];
lineViewHorizon.backgroundColor = [UIColor blueColor];
[self.view addSubview:lineViewHorizon];
[lineViewHorizon removeFromSuperview];
答
我希望能够显示和代码
的不同部位取下为了从另一个视图删除一个视图,你需要一个指针视图你想删除。您可以通过在视图层次结构中查找视图(可能使用-viewWithTag:
),或者可以在实例变量(或属性)中保留指向视图的指针。无论哪种方式,关键是你需要一个指向视图的指针,这样你就可以发送一条消息给-removeFromSuperview
。
我正在尝试第二种方法,但正在处理语法问题。我在.h中放了一个 - (void)属性,但不知道如何在.m中声明指针。 – 2014-10-04 15:38:31
我可以声明这是UIView * lineViewHorizon; @implementation之后?这有效,但这是一个好习惯吗? – 2014-10-04 15:46:12