2012-09-04 115 views
2

我正在嘗試製作一個半透明的對話框,以便您可以在開始之前在後臺看到遊戲。Android對話框半透明

我已經看過這篇文章如何使它透明,但沒有真正的半透明或如果它是可能的。

android dialog transparent

我想要的是那種喜歡他提供的圖片,但什麼解決方案提供的是對話的背景下被完全消失了。

非常感謝!

回答

3

將背景顏色設置爲#AARRGGBB,其中AA是Alpha通道。 例如,你可以使用#00000000的顏色或短路法: #ARGB所以這將是#0000 使用速記符號值分別只用了兩次,其中#264C將是相同#226644CC See also Android Color for more.

+0

涼爽,非常感謝! =] –

9

您可以繼續使用android dialog transparent提供的代碼。

創建於colors.xml你想要的背景顏色,例如:

<color name="translucent_black">#80000000</color> 

,並設置對話框中有一個與translucent_black:

mDialog.getWindow().setBackgroundDrawableResource(R.color.translucent_black); 

注:alpha通道由顏色資源上傳遞的前兩位數字表示。在示例中,我將alpha設置爲「」。您可以在Android Color閱讀更多關於android顏色的信息。

+0

很酷,謝謝!這很有用。 =] –

+0

我嘗試過使用this.getWindow()。setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));但它沒有工作......謝謝救星:) – CoDe

1

如果您想使用部分透明度,這將幫助您設置顏色代碼。

2個十六進制字符可以附加到任何十六進制顏色代碼。 8位十六進制顏色代碼中的前2個字符表示Android中的不透明度。

2個十六進制字符的範圍可以從00到FF。對於示例 -

  • 普通不透明的黑色六角形 「#000000」
  • 完全透明的黑色 - 「#00000000」
  • 完全不透明的黑色 - 「#FF000000」
  • 50%透明黑 - 「# 80000000「

這樣,您可以將任何顏色更改爲任何級別的透明度。

使用此功能可通過100從該百分率

鴻溝找到十六進制前綴%和255相乘得到的十進制值。將十進制轉換爲十六進制here 例如。爲50%,50/100 * 255 = 128.使用鏈接我們得到十六進制值80。

源 - http://zaman91.wordpress.com/2010/03/22/android-how-to-create-transparent-or-opeque-background/