17

のsrcとして状態セレクターを使用する場合ImageViewenabled="false"は無視されます。

つまり、これは正しく機能しません。

<ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:enabled="false"
        android:src="@drawable/state_drawable" >

PS: 私は醜い回避策を持っています、私はすぐに答えとしてそれを投稿します、あなたがこの振る舞いについてより良い何かまたは説明を持っているならば、私に知らせてください。

4

4 に答える 4

24

プロパティ android:clickable="true" を追加してみてください

于 2012-05-03T10:47:14.233 に答える
2

TextView考えられる回避策:複合ドローアブルで a を使用します。

<TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:drawableLeft="@drawable/state_drawable"
     android:enabled="false" />

これは機能しているようで、state_drawable から適切なドローアブルを引き出しますが、あまり直感的ではありません。

于 2012-05-03T10:39:48.593 に答える
2

次のプロパティを追加しました。

android:background="@drawable/image_selector"

「android:src」を追加する必要はありません。

あなたの例では、次のようになります。

<ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:background="@drawable/state_drawable" >

それが役に立てば幸い...

于 2015-06-23T09:07:15.230 に答える
0

私にとってはこれだけでした:

image.setClickable(false); 

ImegeView android:enabled="false" の場合、何らかの理由で機能しません。

于 2021-09-21T16:09:50.933 に答える