2015-02-03 26 views
10

için gri ölçekli filtre ayarlamak Bu resimdeki svg resmi göstermek için bu library kullanıyorum, bu resmi kilitli ve kilitli modu göstermek istiyorumGörüntü kilitlendiğinde, goruntu gri renk filtresinde imageView göster. css bu kodu gibi şey:android: imageView

-webkit-filter: grayscale(100%); opacity: 0.5;

ben bu nasıl yapabilirim? Birisi bana yardım edebilir mi ? teşekkürler

cevap

28

Sen görüntü gri tonlama yapmak mümkün olmalıdır ve aşağıdaki kullanarak soluk: kullanarak

public static void setLocked(ImageView v) 
{ 
    ColorMatrix matrix = new ColorMatrix(); 
    matrix.setSaturation(0); //0 means grayscale 
    ColorMatrixColorFilter cf = new ColorMatrixColorFilter(matrix); 
    v.setColorFilter(cf); 
    v.setImageAlpha(128); // 128 = 0.5 
} 

Ve sıfırlamak:

+0

Png dosyaları ama çalışmıyor bu kod çalışması .svg görüntüleri – mahdi

+1

Ah. Bu durumda olabileceğinden korktum. Svg-android'ın yerine koyma rengini kullanabilirsiniz ('getSVGFromInputStream (is, searchColor, replaceColor)') veya SVG'yi bir Bitmap haline getirmeniz ve bunu kullanmak için ImageView'ı ayarlamanız yeterlidir. –

+0

Harikalar gibi çalışır! Güzel Çözüm. – sud007

İlgili konular