使用TransitionDrawable,相同的可绘制项目不会呈现相同的大小

时间:2018-05-03 05:43:09

标签: android android-animation android-transitions transitiondrawable

我试图通过使用TransitionDrawable类更改背景drawable来为TextView设置交替的背景颜色。这是我得到的结果:

enter image description here

问题是第二个drawable小于第一个,因此绿色背景总是在两侧可见。我需要蓝色背景来完全覆盖绿色背景。我只是想不通为什么会这样。

一些布局文件:

submission.ProblemSet$Snow

crumb_animated.xml

<TextView
        android:id="@+id/alertCrumb"
        style="@style/Custom.TextAppearance.AppCompat.Caption"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/crumb_animated"
        android:textColor="@android:color/white"/>

在java中调用它:

<?xml version="1.0" encoding="utf-8"?>
<transition xmlns:android="http://schemas.android.com/apk/res/android">

    <item>
        <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >

            <solid android:color="@android:color/holo_green_light" >
            </solid>

            <padding
                android:bottom="1dp"
                android:left="4dp"
                android:right="4dp"
                android:top="1dp" >
            </padding>

            <corners android:radius="2dp" >
            </corners>

        </shape>
    </item>
    <item>
        <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">

            <solid android:color="@android:color/holo_blue_dark" >
            </solid>

            <padding
                android:bottom="1dp"
                android:left="4dp"
                android:right="4dp"
                android:top="1dp" >
            </padding>

            <corners android:radius="2dp" >
            </corners>

        </shape>
    </item>
</transition>

0 个答案:

没有答案