Android Gradient描画可能な色の変更

私はdrawableフォルダに形状drawableを持っています。ここにXML構造があります:

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

    
  

今私は、実行時のJavaコードからstartColor、centerColor、endColorを変更したいと思います。どのように変更することができますか?

3
あなたはJavaのリフレクションを使用してそれを行うことができるはずです。
追加された 著者 Jens,

1 答え

残念ながら、これを行うAPIはありません。私は将来のAndroidリリースに1つ追加します。

12
追加された
XMLを使用せずにjavaコードを使ってドロアブル全体を再作成する方法はありますか?
追加された 著者 dev_android,
の代わりになるGradientDrawableを作成しました。しかし、どのようにそれをどんな形にしてもいいですか? ShapeDrawableを使用するべきですか?もしそうなら、GradientDrawableをそのShapeDrawableに設定する方法は?
追加された 著者 dev_android,
GradientDrawableは、ShapeDrawableのsetShaderFactoryメソッドと同等のものを持たないように見えます。これは、より大きい値を持つグラデーションを作成するために使うことができます()。ちょうど3色です。うーん。 : - /
追加された 著者 Dr. Wily's Apprentice,
はい、GradientDrawableを使用します。
追加された 著者 Romain Guy,
GradientDrawableは、の両方に代わるものです。
追加された 著者 Romain Guy,
これは、 API 16 をご覧ください。
追加された 著者 yincrash,