NavigationBar 上的控件的重复创建问题

本人开发一年左右,不多说附上代码.

lineView1=[[UIView alloc]initWithFrame:CGRectMake(soldBtn.frame.origin.x+soldBtn.frame.size.width/2-25, 38, 50, 2)];

lineView1.backgroundColor=[UIColor whiteColor];

[navigationView addSubview:lineView1];

[self.navigationController.navigationBar addSubview:navigationView];


自己在操作中发现,第一次进入这个方法,控件没有问题。当自己返回上一级再次进入时,发现上次创建的控件并没有被删除,一般的话不容易发现,我在对其进行透明度值操作时发现他的透明度始终不变,但是第一次就可以,后面自己用debug模式发现有两个重叠的view,这才发现销毁了控制器却并没有销毁navigationbar上的view。

-(void)viewWillDisappear:(BOOL)animated

{

[super viewWillDisappear:animated];

[navigationView removeFromSuperview];

}

在退出前删掉就可以了。

推荐阅读更多精彩内容