2014-01-31 30 views
1

enter image description hereAndroid編號有梯度

如何才能在Android應用程序中爲動態數字創建漸變?

E.g.使用TextView或帶有文本的按鈕。
(簡單的解決方案是一個最喜歡的)

+0

你有沒有嘗試過什麼嗎? –

+0

所有答案都很好,但@ user2247689解決方案更可取,因爲它顯示XML,這裏是一個更有用的UI聲明示例http://stackoverflow.com/a/5300865/304371 – Artru

回答

2

試試這個

TextView Textview1 = new TextView(this); 
Shader textShader=new LinearGradient(0, 0, 0, 20, 
     new int[]{Color.GREEN,Color.BLUE}, 
     new float[]{0, 1}, TileMode.CLAMP); 
Textview1.getPaint().setShader(textShader); 
1

這是可能的,只需創建一個可繪製的文件,用漸變:

<shape> 
      <gradient android:startColor="" 
       android:endColor="" 
       android:angle=""/> 
</shape> 

,並在

點吧
<TextView ... 
       android:textColor="@drawable/yourdrawablename"/> 

或以編程方式類似於:

tv.setTextColor(R.drawable.yourdrawablename); 
+0

這不起作用。除編程外,漸變不能應用於TextView。 – Artru

1

使用ShaderLinearGradient android中

TextView textview = new TextView(this); 
     Shader shader= new LinearGradient(0, 0, 0,20,new int[]{Color.WHITE,Color.GRAY},new float[]{0, 1}, TileMode.MIRROR); 
         textview.getPaint().setShader(shader); 
+1

請更正代碼中的錯誤 – Artru

+0

我編輯了我的答案看看.. – Nambi