0

當我們改變亮度時,它的活動變得透明 所以我們可以看到主屏幕/另一個運行在後面的應用程序。我想要(100%像亮度seekbar一樣)在我的自定義seekbar上。在seekbar變化上顯示透明活動

我的應用主要活動背景顏色爲灰色,

我想在搜索條拖動:我的活動變得透明,並顯示後臺活動/背景主屏幕,

當拖動完成其回在灰色的背景上正常。

我的研究:

我在透明的活動搜索,我發現了許多問題和許多不同的風格和主題的選擇。

這是我最後一次嘗試:

<activity android:name=".Activity" 
    android:theme="@android:style/Theme.Translucent"> 

當我跟隨StackOverflow的答案,我得到這個錯誤每次:

"You need to use a Theme.AppCompat theme (or descendant) with this activity."

=>我也試試,透明背景顏色,透明的繪製,從清單透明,

結果:背景顯示白色,不透明

我只有1個主要活動,自定義亮度seekbar和其他選項。

我的清單文件

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="st.package"> 

<uses-permission 
android:name="android.permission.ACTION_MANAGE_OVERLAY_PERMISSION"/> 
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> 
<uses-permission android:name="android.permission.WRITE_SETTINGS" /> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
    <activity android:name=".MainActivity" 
     android:theme="@android:style/Theme.Translucent"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 


    <service android:name="st.package.ChatHeadService" 
     android:exported="true"> 
    </service> 

    <receiver android:name="MainActivity$switchButtonListener" /> 
</application> 

MainActivity.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context="overlayhead.overlayhead.MainActivity" 
android:orientation="vertical" 
android:windowIsTranslucent="true" 
android:id="@+id/LinearLayout" 
android:background="@android:color/transparent" 
> 
+0

看到這個鏈接,並想想你想要什麼。 1)[刪除seekbar的背景](https://stackoverflow.com/questions/2459326/android-remove-seekbar-background)2)[透明搜索欄](https://stackoverflow.com/questions/26989400/custom -seekbar-thumb-not-transparent-on-lollipop-api21) –

+0

看到這個鏈接,並採取任何想要的想法。 1)[刪除seekbar的背景](https://stackoverflow.com/questions/2459326/android-remove-seekbar-background)2)[透明搜索欄](https://stackoverflow.com/questions/26989400/custom -seekbar-thumb-not-transparent-on-lollipop-api21) –

回答

1

"You need to use a Theme.AppCompat theme (or descendant) with this activity."

這是因爲你需要使用一個程序兼容性主題。因此,您可以在styles.xml中定義自定義主題,並將其用作所需Activity的主題。

<style name="Theme.AppCompat.Translucent" parent="Theme.AppCompat.NoActionBar"> 
     <item name="android:windowNoTitle">true</item> 
     <item name="android:windowBackground">@android:color/transparent</item> 
     <item name="android:colorBackgroundCacheHint">@null</item> 
     <item name="android:windowIsTranslucent">true</item> 
     <item name="android:windowAnimationStyle">@android:style/Animation</item> 
    </style> 
清單檔案中的

,聲明Theme.AppCompat.Translucent設爲您的主題

<activity android:name=".MainActivity" 
     android:theme="@style/Theme.AppCompat.Translucent"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
+0

我只是在我的style.xml中,在清單活動中添加你的樣式android:theme =「@ android:style/Theme.Translucent」----仍然返回同樣的錯誤... 請檢查問題,我在清單中添加我的完整清單文件 –

+0

@AsadRaza,您需要使用Theme.AppCompat.Translucent。看到我的編輯 – Darish

+0

像這樣? android:theme =「@ android:style/Theme.AppCompat.Translucent」----它的返回錯誤。 「無法解決」,你的代碼在資源/值/ style.xml –

1

爲透明色,你應該提供顏色代碼,8位在那裏,所以如果你想前兩個數字只是#後表示百分比透明度白色與50%的透明度,那麼你應該寫顏色值爲「#50ffffff」。在Java中使用這種技術

你可以像這樣

yourLayout.setBackgroundColor(Color.parseColor("#"+i+"bdbdbd")); 

在那裏我將是從00到99按我的顏色透明度的價值將被改變。以每查詢欄值從00到99增加和減少i的值。

+0

我在onCreate()中使用您的代碼,其更改我的活動背景色麗和黑暗,不透明。 :( –

+0

什麼是你的實際佈局背景顏色和你使用什麼顏色來透明?你能告訴我那個樣本嗎? –

+0

嘗試在相對佈局中放置一個臨時文本視圖並再次檢查它在透明度較低時會消失 –