① 如何為android的ImageView和GrilView設置透明背景色
在布局文件中,可以使用屬性android:background="#00ffffff",在方法中使用view.setBackgroundColor(android.graphics.Color.parseColor("#00ffffff"));
在GrilView中注意,如果有子視圖,子視圖的背景設為透明才能使GrilView背景全部透明。
② 如何設置Android中控制項的顏色透明度
設置Android中控制項的顏色透明度,可自由設置在layout里也可以在activity里
eclipse
1
#ff000000 此為16進制顏色代碼,
前2位ff為透明度,後6位為顏色值(000000為黑色,ffffff為白色,可以用ps等軟體獲取)。
2
透明度分為256階(0-255),計算機上用16進製表示為(00-ff)。透明就是0階,不透明就是255階,如果50%透明就是127階(256的一半當然是128,但因為是從0開始,所以實際上是127)。
3
10進制的255換算成16進制是ff,127換算成16進制是7f,#7f000000 代表50%透明度的黑色。 (寫成#50000000當然是不行的)進制轉換可使用win7自帶計算器(轉為科學型)。例:25%透明度的一種紅色「#3ff70000
③ android編程如何把現有的背景圖片設置成透明的
方法一:
只要在配置文件內activity屬性配置內加上
android:theme="@android:style/Theme.Translucent"
就好了。
這樣就調用了android的透明樣式!
方法二:
先在res/values下建colors.xml文件,寫入:
<?xmlversionxmlversion="1.0"encoding="UTF-8"?>
<resources>
<colornamecolorname="transparent">#9000</color>
</resources>
這個值設定了整個界面的透明度,為了看得見效果,現在設為透明度為56%(9/16)左右。
④ 請教android怎麼讓控制項背景透明
以Android Studio為例,步驟如下:
1、直接打開相關窗口,在Android-app-res-layout的空白處點擊滑鼠右鍵並選擇New-Layoutresource file。
⑤ android怎麼把activity的最底層view的背景設為透明
設置背景為透明
1、設置背景為透明
<ImageView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"/>也可以設置顏色值,前兩位為透明度
2、設置背景透明度
<ImageView
android:id="@+id/tv"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:alpha="0"/>
相應的也可以在java代碼中設置透明
⑥ Android 狀態欄透明
前言:最近項目大量用到狀態欄透明,網上也出現很多庫可以直接拿來用,個人認為沒有必要那麼重引用到一個庫(有木有同學和我有一樣的想法),所以研究了一番,在此做個記錄加強記憶也便後期查閱,如果無意中有幸能幫助到你那就再好不過了。
Android 從 4.4 (SDK 19) 開始支持 系統欄(狀態欄+導航欄)半透明 效果:
翻譯一下就是:
TranslucentDecor 主題設置了兩個屬性 windowTranslucentStatus 和 windowTranslucentNavigation 都為 true,前者指定狀態欄半透明、後者指定導航欄半透明。
本文只探討「狀態欄」 。
默認樣式是這樣:
可見 Toolbar 和系統狀態欄之間有明顯的分界,我們要實現的效果是 Toolbar 和狀態欄背景統一,看起來像是一個整體(自行腦補圖片)。
按照官方文檔,我們自定義主題:
對應的 Activity 引用該主題:
我看來看看效果:
雖然實現了半透明,但是布局被狀態欄覆蓋,接下來在布局文件中設置 fitSystemWindows (注意加到根節點 ConstraintLayout 上):
來看看效果:
雖然布局沒有被狀態欄覆蓋,但是狀態欄背景顯然這不是我們想要的效果😭
為什麼狀態欄會這么奇怪?
文章開頭的定義中我們說了,布局文件會延伸到狀態欄所佔區域下, fitsSystemWindows 的作用是給對應的 View 增加 padding(這里以 ConstraintLayout 為例),目的是為了讓其內容不被狀態欄遮擋。
在我們的布局文件中 ConstraintLayout 沒有設置背景(默認白色),所以狀態欄默認的半透明背景色和 ConstraintLayout 的白色背景疊加,就變成了上圖中的效果。
【總結】兩個基本概念:
1、 windowTranslucentStatus 設置為true之後,狀態欄默認是 半透明 的(4.4 是黑色到透明色漸變,5.0+ 是純黑色半透明),和我們要求的 透明 相去甚遠。更重要的是,布局會延伸到狀態欄底下。
2、 android:fitsSystemWindows 簡單理解 就是 View 為了適配系統狀態欄和導航欄(不被遮擋)自動 增加 padding ,當然真正的實現原理比這復雜很多而且不同的 View 可以自定義實現方式。
所以,為了實現文章開頭提出來的「狀態欄透明」效果,我們需要處理:
設置 windowTranslucentStatus 為 true,讓狀態欄半透明。
在根節點設置 android:fitsSystemWindows 使其不被狀態欄遮擋。
Android 4.4 暫時沒有辦法去掉狀態欄的漸變。
Android 5.0+ 開始支持修改狀態欄顏色,設置透明色即可把半透明去掉。
看看效果:
我們看到即使狀態欄透明了,但是其底色是一片白,因為跟節點 ConstraintLayout 沒有設置背景,大多情況下我們不會給整個跟節點設置顏色,可以考慮把 android:fitsSystemWindows 設置到子 View 上,本例中是 AppBarLayout (5.0+ 無效,只能顯式給 AppBarLayout 加 padding,可以利用其背景色),實際項目中可靈活調整。
最終效果:
至此,完成狀態欄透明效果,網上有很多庫,實際上都是基於此原理,在此基礎上再自定義 View 做為狀態欄背景。
https://developer.android.com/about/versions/android-4.4.html
⑦ Android 透明度設置詳解
格式:
android:background="#XXxxxxxx"(顏色可以寫在color中)
說明:半透明顏色值不同於平時使用的顏色,半透明顏色值共8位,前2位是透明度,後6位是顏色。也就是說透明度和顏色結合就可以寫出各種顏色的透明度。下面是透明度說明表,供大家參考。
部分透明度示例:
setAlpha()的括弧中可以填0–255之間的數字。數字越大,越不透明。
注意點:
在5.0以上系統時,有些機型會出現莫名其妙的顏色值不起作用,變成透明了,也就是用此方法會導致其他共用一個資源的布局(例如:@color/white)透明度也跟著改變。比如text用上述方法設置成透明後,項目中,其他用到text顏色值的控制項,都變成透明了。
原因:在布局中多個控制項同時使用一個資源的時候,這些控制項會共用一個狀態,例如ColorState,如果你改變了一個控制項的狀態,其他的控制項都會接收到相同的通知。這時我們可以使用mutate()方法使該控制項狀態不定,這樣不定狀態的控制項就不會共享自己的狀態了。
android:alpha的值為0~1之間的數。數字越大,越不透明。1表示完全不透明,0表示完全透明。
說道Activity透明,發現網上的基本上都已經過時,在有v7以上的控制項都無法實現,均會報錯
所以如若你的布局xml文件有 support-V7 上的控制項的話,<style name="translucent">里的name要前要添加 AppTheme,如:
⑧ android設置透明使底部控制項可見
在Android上設置透明背景以使底部控制項可見,可以使用設備點陣圖來實現,只需將設備點陣圖的Alpha值設置為零,即可讓底部控制項可見。除此之外,還可以使用setAlpha()方法來設置Alpha值,以便讓底部控制項顯示出來。
在Android上設置透明背景以使底部控制項可見,可以使用設備點陣圖來實現,只需將設備點陣圖的Alpha值設置為零,即可讓底部控制項可見。除此之外,還可以使用setAlpha()方法來設置Alpha值,以便讓底部控制項顯示出來。
⑨ Android設置Activity背景為透明style的方法
1.設置Theme.Translucent
只需要在Manifest中需要透明的Activity內設置theme為以上任意一個就可以了
2.在Activity的layout.xml文件中,設置父布局背景透明度(不設置背景色默認全透明),不設置透明度看不出效果,如果子控制項設置了背景色且不透明,則子控制項所佔位置無透明效果。
3.效果圖
1.使用自定義的Theme
2.在res-values-styles.xml中添加MyTransparent
3.在res-values-colors.xml中添加透明顏色值
4.以上步驟設置完成和方法一有同樣的效果,省去了在layout.xml設置透明背景色(如果在布局中頁設置了背景色,將以布局中的為准)。方法二相對靈活一點,可以多設置一些屬性,如模糊背景:
⑩ android導航欄與狀態欄顏色及透明度
首先創建一個空項目,如下圖
可以看到狀態欄是白字黑背景, 導航欄也是白圖標黑背景
嘿嘿, 我們先把狀態欄隱藏掉,在添加一個ImageView, 讓ImageView做背景(方便查看)
樣子如下:
將狀態欄和導航欄設置透明, 找到 Manifest.xml 文件, 在主題樣式中修改
android:statusBarColor 設置狀態欄背景色
android:navigationBarColor 同上
android:windowLightStatusBar 設置狀態欄文字色, true為深色, false為白色
android:windowLightNavigationBar 同上
android:windowTranslucentStatus 設置狀態欄半透明狀態, true為半透明, false為不透明
android:windowTranslucentNavigation 同上
最後兩個半透明狀態下面沒用, 可自己嘗試看效果
效果圖如下:
可以看到導航欄與狀態欄並沒有透明,原因是默認不能佔用狀態欄空間與導航欄空間,根布局背景為白色,所有這里顯示白色
可以通過設置 getWindow().getDecorView().setSystemUiVisibility() 來適配
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 適配狀態欄空間
View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 適配導航欄空間
效果如下: