2016-11-30 148 views
0

我有這樣的一個TextView自定義背景:Android的設置背景顏色的TextView具有自定義背景已經

<?xml version="1.0" encoding="utf-8"?> 

<corners android:radius="45dp"/> 

<padding android:bottom="10dp" 
     android:left="10dp" 
     android:right="10dp" 
     android:top="10dp"/> 

我想改變許多顏色它的動態。所以我試圖改變背景顏色:

title.setBackgroundColor(ContextCompat.getColor(mContext, R.color.red)); 

但我改變背景顏色後,我看不到它的角落。如何爲textview動態更改顏色?

+1

我認爲這是你在找什麼?http://stackoverflow.com/questions/18391830/how-to-programmatically-round-corners-and-set-random-background-colors – Amit

+0

謝謝,它的工作:D –

回答

1

發生這種情況是因爲通過使用title.setBackgroundColor()您正在替換您的自定義背景,因此角落消失。

嘗試檢索drawable並更改其顏色。

GradientDrawable titleDrawable = (GradientDrawable) title.getBackground(); 
titleDrawable.setColor(Color.RED)