我在UIButton
中显示viewcontroller
,其中包含navigationcontroller
。
问题是,当使用推送转换显示视图时,按钮会闪烁。
我已经在SO上查看了现有的解决方案,但它们似乎都没有用。
-(void)viewDidLoad{
//call to super
[button setBackgroundImage:[UIImage imageNamed:@"NormalImage"] forState:UIControlStateNormal];
[button setBackgroundImage:[UIImage imageNamed:@"SelectedImage"] forState:forState:UIControlStateSelected];
[button setBackgroundImage:[UIImage imageNamed:@"SelectedImage"] forState:UIControlStateHighlighted];
}
1)我尝试使用setImage,但它不起作用。事实上,它根本不显示图像。
2)禁用动画在viewdidload
中工作(并在viewDidAppear
中启用)但它也禁用了导航控制器动画。
[UIViews setAnimationsDisabled];
答案 0 :(得分:0)
您是否通过Interface Builder为按钮指定了不同的背景图像? 这里可能发生的是,您的按钮在Interface Builder中分配了一组不同的图像,并且您在加载视图并且可能已经显示后更改背景,因此您可以看到闪烁。 我建议如果可能的话,直接在你的xib文件中配置你的按钮。