Android設定透明、半透明等效果

dj0379發表於2015-10-22
2011-12-15 10:42:51
設定透明效果 大概有三種

1、用android系統的透明效果
Java程式碼 
android:background="@android:color/transparent" 

例如 設定按鈕
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來控制
Java程式碼 
半透明<Button android:background="#e0000000" /> 
透明<Button android:background="#00000000" /> 
 
3、設定alpha
Java程式碼 
View v = findViewById(R.id.content);//找到你要設透明背景的layout 的id 
v.getBackground().setAlpha(100);//0~255透明度值 
 
 
 
 
 
 

android 窗體透明的,黑暗度等的設定技巧
設定透明度(這是窗體本身的透明度,非背景)
lp.alpha=
1
.5f;
31
<code bitstream="" vera="" sans="" mono',="" 'courier="" new',="" courier,="" monospace="" !important;="" float:="" none="" border-top-width:="" 0px="" border-bottom-width:="" height:="" auto="" color:="" rgb(0,0,0)="" font-size:="" 10pt="" vertical-align:="" baseline="" border-left-width:="" top:="" right:="" font-weight:="" normal="" padding-top:="" left:="" background-origin:="" initial;="" background-clip:="" initial"="" class="plain" style="margin: 0px; padding: 0px !important; border-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; left: auto !important; line-height: 1.1em !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; min-height: inherit !important; background: none !important;">WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
以上設定對dialog對話方塊同樣有效
 
 
 
Activity的透明、半透明效果的設定transparent
res/values/styles.xml
1
2
3
4
5
6
7
8
9
10
11
12
<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
1
2
3
4
5
6
7
<?xml version="1.0" encoding="utf-8"?>  
<resources>  
  <color name="transparent_background">#50000000</color>  
</resources>  
//注意:
//color.xml的#5000000前兩位是透明的效果引數從00--99(透明--不怎麼透明),
//後6位是顏色的設定
manifest.xml
1
2
3
4
<activity 
android:name=".TransparentActivity" 
android:theme="@style/Transparent">  
</activity>
java程式碼
1
2
3
4
5
public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setTheme(R.style.Transparent);   
        setContentView(R.layout.transparent);  
}

相關文章