iOS中的translucent使用

曾经在维护一个项目的时候,被translucent这个属性深深伤害过。。。往事不提也罢。。。
来吧,一起来研究这个translucent吧!官方文档是这么解释了。

A Boolean value that indicates whether the tab bar is translucent.
When the value of this property is YES, the tab bar adds a translucent effect to its background image or tint color. When translucency is enabled, part of the tab bar’s underlying content is able to show through, although the amount that shows through depends on the rest of the tab bar configuration. For example, a background image can wholly or partially obscure the background content. Setting this property to NO causes the tab bar to render its bar tint color or background image on top of an opaque backdrop.
The default value of this property is dependent on the configuration of the tab bar:
The default value is YES when the tab bar does not have a custom background image.
The default value is YES when a custom background image contains any transparency—that is, at least one pixel has an alpha value of less than 1.0.
The default value is NO when the custom background image is completely opaque—that is, all pixels have an alpha value of 1.0.

算了,还是贴中文吧,现在的程序员有几个英文好的?

一个布尔值,用来表示标签栏是否为半透明。
当这个属性的值是YES时,标签栏会增加其背景图像或色彩的半透明效果。当启用半透明状态时,标签栏的底层内容的一部分可以显示出来,尽管显示的内容取决于选项卡栏的其余部分。例如,背景图像可以完全或部分地模糊背景内容。在不透明的背景下,将属性设置为没有导致标签栏显示它的条色或背景图像。
该属性的默认值取决于选项卡栏的配置:
当选项卡栏没有一个自定义背景图像时,默认值是YES。
默认值是YES,当一个自定义背景图像包含任何透明度时,至少一个像素的alpha值小于1.0。
当自定义背景图像完全不透明时,默认值是不存在的,即所有像素都具有1.0的alpha值。
———本结果来自有道神经网络翻译

然而也没有什么卵用,

translucent默认是开启的,
如果你的项目里面有导航栏或者分页栏,如果开启了translucent,ViewController 子视图 subView是顶在顶部或者底部的。因为translucent是透明的、半透明的意思,这个透明不是普通的那种普通玻璃透明的那种,是毛玻璃的那种效果,你可以脑补下卫生间那个玻璃门那种效果,能看见里面有人,就是看不清!!!扯远了。。。直接上图吧

iOS中的translucent使用_第1张图片
translucent = YES.png

最近在学习storyBoard,所以就不写代码了


iOS中的translucent使用_第2张图片
storyBoard中设置.png

那么,效果将会是这样的

iOS中的translucent使用_第3张图片
trancelucent=NO.png

至于这种效果,UI设计师一般不知道,事先沟通,不然项目打了以后你会很麻烦,尤其是导航栏效果处理,一般是UI他们决定你做什么,谁让程序员是最底层的工作。。。

你可能感兴趣的:(iOS中的translucent使用)