我正在尝试在代码中创建一个按钮选择器 - 并为按下的状态添加一个色调。但是,我所做的一切似乎都不会影响BitmapDrawable。 这是我的代码(使用Xamarin.Android):
void SetSelector(Button b, Bitmap bitmap)
{
StateListDrawable states = new StateListDrawable ();
BitmapDrawable d1 = new BitmapDrawable (bitmap);
BitmapDrawable d2 = new BitmapDrawable (bitmap);
d1.SetColorFilter (global::Android.Graphics.Color.Red, PorterDuff.Mode.Multiply);
states.AddState (new int[] { global::Android.Resource.Attribute.StatePressed }, d1);
states.AddState (new int[] { }, d2);
b.SetBackgroundDrawable (states);
}
我尝试了不同的东西。创建一个LightningColorFilter并在BitmapDrawable或Paint对象等上设置它。似乎没有任何效果。 从根本上说,我缺少一些东西吗?