我希望我的主屏幕小部件是一个带有角的矩形,所以我有一个可绘制的形状。但是,需要按一下按钮更改纯色以匹配我的文本背景颜色。我可以通过以下方式更改文本背景颜色:
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
backgroundColor = colors[mCounter];
views.setInt(R.id.appwidget_text, "setBackgroundColor", backgroundColor);
我尝试了以下但没有运气:
views.setInt(R.drawable.layout_bg, "setBackgroundColor", backgroundColor);
我也尝试过更改小部件的backgroundTint以及以下内容:
views.setInt(R.id.appwidget_layout, "setBackgroundTint", backgroundColor);
这也不执行任何操作。
有解决方案吗?
int[] color = new int[2];
color[0] = Color.parseColor("#000000");
color[1] = Color.parseColor("#000000");
View view = new RelativeLayout(this);
GradientDrawable drawable = (GradientDrawable) view.getBackground();
drawable.setColors(color);
尝试一下。针对您的问题,
int[] color = new int[2];
color[0] = Color.parseColor("#000000");
color[1] = Color.parseColor("#000000");
GradientDrawable drawable = (GradientDrawable) views.getBackground();
drawable.setColors(color);
希望它会有所帮助。 :)