我为我的应用创建了一个屏幕教程。
我通过创建PageViewController
来管理4 viewControllers
来完成此操作。
在PageViewController
我实现了以下代码
self.modalPresentationStyle = UIModalPresentationFormSheet;
我还将pageViewController视图上的alpha设置为.45
这使得PageViewController
透明,这正是我想要的。
但是,它也使得由PageViewController管理的4 viewControllers
内的所有内容都是透明的,即按钮,标签等。
如何阻止所有这些对象透明?
答案 0 :(得分:0)
要更改视图的背景颜色,请在视图上使用以下颜色:
[viewController.view setBackgroundColor:[UIColor COLOR]];
其中COLOR是您想要的颜色(即whiteColor)
答案 1 :(得分:0)
视图总是像这样工作。如果你想让一个半透明的视图,如果它也不会影响它的所有子视图,那通常会非常令人烦恼。您希望Alpha设置也影响子视图的时间可能远远超过您不支持的次数。
您可以做的不是让视图透明,而是使其背景颜色透明。也就是说,而不是:
self.view.backgroundColor = [UIColor blueColor];
self.view.alpha = 0.45;
你可以这样做:
self.view.backgroundColor = [UIColor colorWithRed:0 green:0 blue:1 alpha:.45];
这样,您的子视图不会受到影响,因为主视图的背景颜色的alpha为0.45时,视图的alpha值仍为1.0。