其他分享
首页 > 其他分享> > android – TansitionDrawable第一个元素不会消失

android – TansitionDrawable第一个元素不会消失

作者:互联网

我正在尝试使用TransitionDrawable来在播放/暂停图标之间切换.当我第一次点击播放按钮时,播放图标停留,暂停按钮出现在播放图标的顶部.当我再次点击时,暂停图标消失,播放按钮就在那里.

代码:onClick运行此方法

private void startOrPause() {
    TransitionDrawable drawable = (TransitionDrawable) mPlayBtn.getDrawable();
    if (!isPlaying) {
        drawable.startTransition(300);
    } else {
        drawable.reverseTransition(300);
    }

    isPlaying = !isPlaying;

}

XML:过渡

<transition xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/ic_play"/>
    <item android:drawable="@drawable/ic_pause"/>
</transition>

的ImageButton:

<ImageButton android:id="@+id/audio_layout_play_imageButton"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_centerVertical="true"
             android:src="@drawable/play_pause_transition"
             android:background="@android:color/transparent"
             android:layout_marginLeft="4dp"
        />

我查看了android示例代码和互联网上的一些指南,每个人都这样做.

谢谢你的帮助,

罗伊

解决方法:

我有完全相同的问题,只发生透明图像(32位PNG,GIF).
尝试使用setCrossFadeEnabled

TransitionDrawable drawable = (TransitionDrawable) mPlayBtn.getDrawable();
drawable.setCrossFadeEnabled(true);

标签:android,android-transitions
来源: https://codeday.me/bug/20190528/1174012.html