2014-01-20 38 views
0

我为我的应用程序创建了一个屏幕教程。 我已通过创建PageViewController来管理4 viewControllers。 在PageViewController我已经实现下面的代码如何停止视图控制器的清晰颜色?

self.modalPresentationStyle = UIModalPresentationFormSheet; 我也设置在pageViewController视图阿尔法以0.45

这使得PageViewController透明这正是我想要的。 但是,它也使得由PageViewController管理的所有内容都透明,即按钮,标签等。

如何阻止所有这些对象变得透明?

+3

视图控制器不是接口对象。他们没有颜色。视图有颜色。 – matt

+0

我站好了。谢谢马特。 – user3071579

回答

0

意见总是这样工作的颜色(即whiteColor)。如果你想使视图半透明,如果这不会影响其所有子视图,通常会非常麻烦。当你希望你的阿尔法设置也影响子视图的时间可能远远超过你不这样做的时间。

你可以做什么,而不是使查看透明是使其背景色透明。也就是说,代替:

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,的阿尔法视图本身仍然是1.0。

+0

太棒了。感谢保罗,我正在寻找什么。 – user3071579

0

要更改视图的背景颜色,使用上的观点如下:

[viewController.view setBackgroundColor:[UIColor COLOR]]; 

在显色是你想

+0

Choppin,我编辑了我的问题。我只是意识到我没有问我在想什么。我可以修改的视图的背景颜色。问题是视图中对象的Alpha。它们都是透明的,就像我设置了alpha。 – user3071579

相关问题