2017-08-22 136 views
0

我想給一些Android樣式的按鈕動態,根據輸入的整數值。例如,如果用戶輸入25,我的按鈕形狀將更改爲「四分之一圓」。如下圖所示。 quarter of a circle image動態android按鈕樣式


我嘗試使用

GradientDrawable shape=new GradientDrawable(); 
shape.setShape(GradientDrawable.OVAL); 

,但我不能找到有效的方法用於化妝quarter of Oval


換句話說,我希望做一個點擊pieChart 唐給我提供github.io圖書館。


請仔細閱讀此說明。 1.我知道如何使用<selector>元素,並根據該狀態更改按鈕樣式。 2.我知道如何使用<shape>drawable資源。但我需要根據用戶輸入的值來改變形狀。

+0

了什麼你試過這麼遠嗎?你失敗了? – Selvin

+0

感謝您的通知。我編輯它 –

回答

0

我假設你的意思是編輯文本視圖,因爲你不能輸入文本。你可以通過編程來做到這一點。您需要使用按鈕實例作爲參考,並將TextWatcher添加到編輯文本視圖中,並在其中添加if語句。

使用以下爲例:

Button button = findViewById(R.id.<id of button>); 
EditText editText = findViewById(R.id.<id of edit text view>); 
editText.addTextChangedListener(new TextWatcher() { 
      @Override 
      public void beforeTextChanged(CharSequence charSequence, int i,int i1, int i2) {} 

      @Override 
      public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { 

       if(charSequence.equals("25")){ 
        button.setBackgroundResource(R.drawable.<id of custom button>); 
       } 
      } 

      @Override 
      public void afterTextChanged(Editable editable) {} 
     }); 
+0

不,我的意思是完全Button.thank你 –

+0

不僅25。我的意思是如果用戶輸入54.5?我做什麼...我想製作可點擊的餅圖 –

+0

對於您所有的不同情況,使用「switch(charSequesnce)」語句。 –