在需求上遇到背景設(shè)置透明度還是比較常見(jiàn)的,設(shè)置透明度有幾種方式,但是不同的場(chǎng)景應(yīng)用下,不同的方式可能會(huì)出現(xiàn)一些問(wèn)題。針對(duì)開(kāi)發(fā)過(guò)程中的需求做以下總結(jié)。
10年積累的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有潛江免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
按鈕點(diǎn)擊
布局
輸入框背景 search_title_bg
背景透明度設(shè)置比較常見(jiàn),mutate()方法,可以解決背景透明狀態(tài)設(shè)置異常的現(xiàn)象。這里只記載需求開(kāi)發(fā)中遇到的問(wèn)題,可能還有其他方式,歡迎分享?。?/p>
設(shè)計(jì)師給效果圖時(shí)透明度一般都是標(biāo)注為百分比,如:#000000透明度為50%,我們就要把50%轉(zhuǎn)換為程序里使用的16進(jìn)制才能使用。那么50%透明度該如果計(jì)算為16進(jìn)制呢?
因?yàn)橥该鞫确譃?56階(0 ~ 255),在計(jì)算機(jī)上用16進(jìn)制表示為(00 ~ ff),透明就是0階,不透明就是255階,如果50%透明就是127階(256的一半為128,但我們是從0開(kāi)始計(jì)數(shù)的,所以實(shí)際上是127)。
10進(jìn)制255換算為16進(jìn)制是ff,127換算成16進(jìn)制是7f,因此 #7f000000 就是代表透明度為50%的黑色
下面以#000000的透明度給出計(jì)算公式:
ips:計(jì)算結(jié)果取整/i
在日常的android開(kāi)發(fā)過(guò)程中,UI設(shè)計(jì)師一般都會(huì)或多或少的做一些不同透明度的背景,從而提高交互效果。 一般這個(gè)時(shí)候設(shè)計(jì)師們都會(huì)丟給我們一個(gè)色值,然后告訴我們,透明度30%,40% ......。 如果我們這個(gè)時(shí)候是給一個(gè)view添加透明度。 我們可以直接通過(guò)設(shè)置 alpha屬性。但是如果是一個(gè)shape組件呢。 沒(méi)有 alpha屬性怎么辦?
這個(gè)時(shí)候我們就需要把一個(gè)普通的色值轉(zhuǎn)換成帶有透明度表示的色值。
how do we it?
一個(gè)正常的16進(jìn)制的色值格式是這樣的: #RRGGBB。如果我們要給這個(gè)色值設(shè)置透明度,那就在他數(shù)值之前添加兩個(gè)字節(jié)去表示不透明度。
例如:#C0C0C0 這個(gè)色值,如果我們要設(shè)置透明度為30%,那就是變成#4DC0C0C0 。 #4DC0C0C0就是#C0C0C0的30%透明度的顯示。
你問(wèn)我,這個(gè)4D是哪里來(lái)的,看底下,左邊那列表示透明度,右邊是值。你想設(shè)置多少就是多少。 爽吧?。。?/p>
從FF開(kāi)始表示完全不透明,到00表示完全透明。 自己理解吧. 哈哈哈!
以上,親測(cè)可用,拿走不謝!
參考鏈接:
Android 一般顏色是十六進(jìn)制表示的
比如:
黑色: #000000
白色: #FFFFFF
但是在實(shí)際使用場(chǎng)景中,設(shè)計(jì)給的藍(lán)湖中,會(huì)顯示透明度的色值,給的是上面的表示這個(gè)都是100%的顏色值,怎樣才能準(zhǔn)確的顯示百分比色值呢,這句需要參考下面的寫(xiě)法了:
在# 后面加上兩位即可
比如:
60%的黑色 : #99000000
75%的紅色 :#BFFF0000
Android中設(shè)置ImageView控件的圖片的透明度應(yīng)該調(diào)用View的api,以下為示例:
1、用android系統(tǒng)的透明效果
Java代碼
android:background="@android:color/transparent"
例如
設(shè)置按鈕
Java代碼
Button
android:background="@android:color/transparent"
android:text="@+id/Button01"
android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ffffff"
/
2、用ARGB來(lái)控制
Java代碼
半透明Button
android:background="#e0000000"
/
透明Button
android:background="#00000000"
/
3、設(shè)置alpha
Java代碼
View
v
=
findViewById(R.id.content);
v.getBackground().setAlpha(100);
說(shuō)明:
0~255透明度值,0表示完全不透明,255表示完全透明。