2016-09-25 76 views
0

我正在開發一款適用於android的計算器應用程序,並且我使用可繪製文件來管理按鈕組的顏色。 我需要允許用戶通過提供幾個可繪製文件來更改計算器主題,然後用戶可以在它們之間進行選擇。 我不知道如何做到這一點,除了做出多個佈局,然後我可以在活動中使用(if)語句。 有一個簡單的方法來此 我使用的財產以後這樣定義按鈕背景我如何讓用戶更改Android應用程序中的按鈕顏色

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true"> 
     <shape android:shape="rectangle" > 
      <corners android:radius="9dip" /> 
      <stroke android:width="1dip" android:color="#009e9e9e" /> 
      <gradient android:angle="-90" android:startColor="#ae104f" android:endColor="#8e0d40" /> 
     </shape> 
    </item> 
    <item> 
     <layer-list> 
      <item android:right="5dp" android:top="5dp"> 
       <shape> 
        <corners android:radius="8dp" /> 
        <solid android:color="#bd848484" /> 
       </shape> 
      </item> 
      <item android:bottom="1dp" android:left="2dp"> 
       <shape> 
        <gradient android:angle="270" 
         android:endColor="#ae104f" android:startColor="#8e0d40" /> 
        <stroke android:width="1dp" android:color="#BABABA" /> 
        <corners android:radius="9dp" /> 
        <padding android:bottom="10dp" android:left="10dp" 
         android:right="10dp" android:top="10dp" /> 
       </shape> 
      </item> 
     </layer-list> 
    </item> 

</selector> 

感謝

+0

您可以爲每個主題使用顏色數組。看到這個 http://stackoverflow.com/a/17584066/2058260 – H4SN

+0

謝謝。但我使用可繪製文件來設置按鈕背景(按鈕具有漸變顏色)。我不知道在那裏使用數組,但我會嘗試。再次感謝。 –

+0

你也可以做相同的創建數組drawables http://stackoverflow.com/a/32829285/2058260 – H4SN

回答

1

您可以存儲用戶的彩色文件或sharedpreferences。並且您的應用程序開始讀取此顏色,並存儲靜態值,以便爲所有按鈕設置backcolor(靜態顏色值)。如果我是你,我就那樣做。它會工作。

+0

我會試試。謝謝 –

相關問題