Android GradientDrawable在布局编辑器预览中看起来有所不同

问题描述 投票:-1回答:1

为什么渐变在Android Studio预览版和实际的Android设备上看起来有所不同?这是屏幕截图:enter image description here在Android Studio中

enter image description here在我的Android手机中

这是drawable / btn_background.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="false">
        <shape android:shape="rectangle">
            <gradient
                android:startColor="#eee"
                android:endColor="#aaa"/>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape android:shape="rectangle">
            <gradient
                android:startColor="#aaa"
                android:endColor="#eee"/>
        </shape>
    </item>
</selector>

这是两个按钮的XML代码:

<Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="display"
            android:text="@string/btn_txt"
            android:textAllCaps="false"
            android:background="@drawable/btn_background"/>

        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:background="@drawable/btn_background"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_fullscreen_black" />

是错误还是其他?

android android-studio gradientdrawable
1个回答
-1
投票

我已经解决了我的问题。我刚刚在渐变drawable中添加了android:angle属性:

<item android:state_pressed="false">
    <shape android:shape="rectangle">
        <gradient
            android:startColor="#eee"
            android:endColor="#aaa"
            android:angle="0"/>
    </shape>
</item>

[没有android:angle属性,Android Studio和Android手机彼此不同意。因此,定义角度解决了这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.