我尝试以编程方式创建的线性渐变:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<gradient
android:type="linear"
android:centerX="50%"
android:startColor="#FFFFFFFF"
android:centerColor="#99FF8A8A"
android:endColor="#FFF8F8F8"
android:angle="90"/>
</shape>
我写了这段代码:但我没有得到相同的结果。
GradientDrawable _gradientDrawable = new GradientDrawable(
GradientDrawable.Orientation.BOTTOM_TOP, new int[]{
Color.parseColor("#FFFFFFFF"),
Color.parseColor("#99FF8A8A"),
Color.parseColor("#FF8F8F8")
});
myimage.setBackground(_gradientDrawable);
哪里是我的错?
要在代码中执行此操作,请创建GradientDrawable。
设置角度和颜色的唯一机会在构造函数中。
如果要更改颜色或角度,只需创建一个新的GradientDrawable并将其设置为背景。
View layout = findViewById(R.id.mainlayout);
GradientDrawable gd = new GradientDrawable(
GradientDrawable.Orientation.TOP_BOTTOM,
new int[] {0xFF616261,0xFF131313});
gd.setCornerRadius(0f);
layout.setBackgroundDrawable(gd);