0

これは可能ですか?たとえば、「クリック効果」を作成するためのセレクターを備えた単純なlinearLayoutがあります。

<LinearLayout
        android:id="@+id/clickToChangeColor"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:background="@color/click_effect" />

これはセレクター click_effect です:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/pressed" android:state_enabled="true" android:state_pressed="true"/>
    <item android:drawable="@drawable/unpressed" android:state_enabled="false"/>
</selector>

すべてが正常に機能しますが、このレイアウトを押すと、アクティビティ (カラー ピッカーなど - しかし、それは問題ではありません) を起動し、linearlayout の色をたとえば青に変更したいと思います。BUT:セレクターの「クリック効果」を維持します。これをほぼ2時間実行しようとしていますが、何も機能しません...

PS:たとえば、このレイアウト内の別のレイアウトで実行できることはわかっています。パディングを適用し、セレクターを外側のレイアウトに適用してから、内側のレイアウトの背景などを変更できます-しかし、それは醜い回避策にすぎません

4

1 に答える 1

1
     <ImageView
                     android:id="@+id/imageViewSelectedColor"
                        android:layout_width="50dp"
                        android:layout_height="50dp"

                        android:background="@color/click_effect"
                        android:src="@color/picked color" />

代わりに画像ビューを使用して、選択した色に応じて src を変更できるようになりました。

于 2013-04-04T10:08:38.083 に答える