溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Android中怎么將組件設(shè)置透明效果

發(fā)布時(shí)間:2020-12-04 16:50:03 來(lái)源:億速云 閱讀:466 作者:Leah 欄目:移動(dòng)開(kāi)發(fā)

Android中怎么將組件設(shè)置透明效果?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

1、Button或者ImageButton的背景設(shè)為透明或者半透明

半透明 

<Button android:background="#e0000000" ... /> 

透明 

<Button android:background="#00000000" ... /> 

顏色和不透明度 (alpha) 值以十六進(jìn)制表示法表示。任何一種顏色的值范圍都是 0 到 255(00 到 ff)。

對(duì)于 alpha,00 表示完全透明,ff 表示完全不透明。表達(dá)式順序是“aabbggrr”,

其中aa=alpha(00 到 ff);bb=blue(00 到 ff);gg=green(00 到 ff);rr=red(00 到 ff)。

例如,如果希望對(duì)某疊加層應(yīng)用不透明度為 50% 的藍(lán)色,則應(yīng)指定以下值:7fff0000

//Java代碼 
View v = findViewById(R.id.content);//找到你要設(shè)透明背景的layout 的id 
v.getBackground().setAlpha(100);//0~255透明度值 ,值越小越透明 

2. 使用Android系統(tǒng)自帶的透明效果資源

<Button android:background="@android:color/transparent"/> 

半透明效果例子如下:

先在color.xml中定義半透明顏色,比如:

<color name="translucent">#55000000</color> 

然后,比如在針對(duì)全屏Dialog的設(shè)定中,在其background中添加上述的半透明效果

<style name="myDialog" parent="@android:style/Theme.Dialog"> 
  <item name="android:windowFrame">@null</item> 
  <item name="android:windowIsFloating">true</item> 
  <item name="android:windowIsTranslucent">true</item> 
  <item name="android:windowNoTitle">true</item> 
  <item name="android:windowBackground">@color/translucent</item> 
  <item name="android:backgroundDimEnabled">false</item> 
  <item name="android:windowCloseOnTouchOutside">false</item> 
</style> 

完整的例子 --- Activity設(shè)置透明/半透明

在res/values/styles.xml中:

<resources> 
 <style name="Transparent"> 
 <item name="android:windowBackground"> 
  @color/transparent_background 
 </item> 
 <item name="android:windowNoTitle">true</item> 
 <item name="android:windowIsTranslucent">true</item>  
 <item name="android:windowAnimationStyle"> 
   @+android:style/Animation.Translucent 
 </item> 
 </style> 
</resources> 

在res/values/color.xml中:

<&#63;xml version="1.0" encoding="utf-8"&#63;> 
<resources> 
 <color name="transparent_background">#50000000</color> 
</resources> 

注意:

//color.xml的#5000000前兩位是透明的效果參數(shù)從00--99(透明--不怎么透明),

//后6位是顏色的設(shè)置

manifest.xml中的設(shè)定:

<activity 
android:name=".TransparentActivity" 
android:theme="@style/Transparent"> 
</activity> 

java代碼

public void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setTheme(R.style.Transparent);  
  setContentView(R.layout.transparent); 
  // ... ... 
} 

看完上述內(nèi)容,你們掌握Android中怎么將組件設(shè)置透明效果的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI