我是Android平台的新手,我正在开发一个主要活动的应用程序 正在使用对话框主题。
我的ui设置几乎就像我想要的那样,但渐变似乎对我不起作用。 我已经尝试过渐变标题栏,视图,布局,textView等,并且在每种情况下都不显示渐变。 (到目前为止我只在模拟器上测试过它)。
我的drawable xml看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#00000000"
android:centerColor="#FFFFFFFF"
android:endColor="#00000000"
android:angle="90" />
</shape>
我使用以下内容将背景设置为多个元素,但它从不显示:
android:background="@drawable/gradient_bg"
我尝试了不同的颜色和角度等,但无济于事。
如果我执行以下操作,则可以使用xml。
GradientDrawable grad = new GradientDrawable(
Orientation.TOP_BOTTOM,
new int[] {Color.RED, Color.YELLOW}
);
this.getWindow().setBackgroundDrawable(grad);
有人可以帮忙吗? 感谢。
答案 0 :(得分:0)
尝试在整个渐变上设置不透明颜色。
例如,使用#FF000000
表示黑色。两个第一个十六进制数字是alpha值。
答案 1 :(得分:0)
您的代码是:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#00000000"
android:centerColor="#FFFFFFFF"
android:endColor="#00000000"
android:angle="90" />
</shape>
工作正常并在Android HTC Hero手机上正确显示渐变!!可能是情节效果可能没有出现在模拟器上。
答案 2 :(得分:0)
感谢。我已经确定它适用于实际设备,因此它必须是模拟器问题。