0

スライダーが開いているときはスライド ドロワーの背景の不透明度を下げ、閉じるときは不透明度を上げる必要があります。

スライダーが開いている/閉じているときに背景を変更しようとしました SlidingDrawer.OnDrawerOpenListener/SlidingDrawer.OnDrawerCloseListener 、それは私が探しているものではありません。

どんな助けでも大歓迎です。

4

1 に答える 1

2

これを試す例を次に示します。

フェードカラー効果TransitionDrawable

RelativeLayout layout = (RelativeLayout) findViewById(R.id.Layout);
layout.setBackgroundResource(R.drawable.translate);
TransitionDrawable transition = (TransitionDrawable) layout.getBackground();
transition.startTransition(5000);

このコードは、黄色から白 (元の色) へのフェード効果をもたらします。

translate.xml

<?xml version="1.0" encoding="UTF-8"?>
   <transition xmlns:android="http://schemas.android.com/apk/res/android">
          <!-- The drawables used here can be solid colors, gradients, shapes, images, etc. -->
          <item android:drawable="@drawable/new_state" />
          <item android:drawable="@drawable/original_state" />
   </transition>

new_state.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape   xmlns:android="http://schemas.android.com/apk/res/android"
            android:shape="rectangle">
    <solid android:color="#FFFFA7"/>
</shape>

original_state.xml

<?xml version="1.0" encoding="UTF-8"?>
<shape   xmlns:android="http://schemas.android.com/apk/res/android"
            android:shape="rectangle">
    <solid android:color="#FFFFFF"/>
</shape>
于 2012-12-17T11:58:22.267 に答える