Android Gradient çekilebilir renk değişimi

Çizilebilir klasörde çizilebilir bir şekil var. İşte xml yapısı:

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

    
  

Şimdi çalışma zamanında java kodundan startColor, centerColor, endColor'u değiştirmek istiyorum. Nasıl değiştirilir?

3
Java yansımasını kullanarak bunu yapabilmelisiniz.
katma yazar Jens, kaynak

1 cevap

Maalesef bunu yapacak bir API yok. Gelecekteki bir Android sürümüne bir tane ekleyeceğim.

12
katma
Herhangi bir xml kullanmadan java kodu ile çekilebilir toplamı yeniden oluşturmak için var mı?
katma yazar dev_android, kaynak
'in yerine bir GradientDrawable oluşturdum. Fakat bunu herhangi bir şekle nasıl ayarlayabilirim? Bunun için ShapeDrawable kullanmalı mıyım? öyleyse, GradientDrawable'ımı bu ShapeDrawable'a nasıl ayarlayabilirim?
katma yazar dev_android, kaynak
GradientDrawable, ShapeDrawable'ın setShaderFactory yöntemine eşdeğer bir değere sahip görünmüyor, daha fazla bir gradyan oluşturmak için kullanılabilir. sadece 3 renk Hmm. : - /
katma yazar Dr. Wily's Apprentice, kaynak
Evet, bir GradientDrawable kullanın.
katma yazar Romain Guy, kaynak
GradientDrawable, ve için bir alternatiftir
katma yazar Romain Guy, kaynak
katma yazar yincrash, kaynak