大家好,我正在尝试使ActionBar与上图中的相同(带有此“波形”),其中可以在运行时更改红色。我尝试使用GradientDrawable(下面的代码),但是渐变效果并不酷,这不是我所需要的。
GradientDrawable gd = new GradientDrawable(
GradientDrawable.Orientation.LEFT_RIGHT,
new int[] {cor, Color.WHITE});
gd.setCornerRadius(0f);
actionBar.setBackgroundDrawable(gd);
有什么主意吗?
答案 0 :(得分:2)
我不确定,但是可以使用定制this之类的自定义drawable.xml来完成。甚至,我认为您可能会混合使用一些可绘制对象来获取要发布的图像。
另一种选择是将要设置为操作栏和代码this的png或jpg图像。问候!
答案 1 :(得分:1)
我在https://vectr.com(.svg)上创建了图像的红色部分。 在Android Studio中,我从创建的图像中添加了一个新的shape_action_bar.xml(矢量资产)。
在活动中,我添加了以下代码:
Drawable drawable = getNavigationController().getResources().getDrawable(R.drawable.shape_action_bar);
ColorFilter color = new PorterDuffColorFilter(selected_color, PorterDuff.Mode.SRC_ATOP );
drawable.setColorFilter(color);
actionBar.setBackgroundDrawable(drawable);
形状将根据所需颜色更改颜色。谢谢