iOS UIView在整个代码中添加和删除子视图

问题描述:

我的应用程序中有一条蓝线,用于显示人造地平线。 我希望能够在代码的不同部分(.m)中显示和删除它。 我可以通用声明它(lineViewHorizo​​n)吗?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

+0

我正在尝试第二种方法,但正在处理语法问题。我在.h中放了一个 - (void)属性,但不知道如何在.m中声明指针。 – 2014-10-04 15:38:31

+0

我可以声明这是UIView * lineViewHorizo​​n; @implementation之后?这有效,但这是一个好习惯吗? – 2014-10-04 15:46:12