0

表示内容を切り替えるボタンが4つあります。それらのいずれかが押されるたびに、強調表示されます。

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

<item android:drawable="@drawable/bottom_selected" android:state_pressed="true"></item>
<item android:drawable="@drawable/bottom_selected" android:state_pressed="false" android:state_focused="true"></item>
<item android:drawable="@android:color/transparent"></item>

</selector>

私の問題は、他のビューがフォーカスされている場合でも、最後に押したボタンがフォーカスを維持する必要があることです (fe、EditText ビューがあり、それを押すと、すべてのボタンがフォーカスを失い、いずれも強調表示されません)。それを行う簡単な方法はありますか?最後に押されたボタンを記憶し、他のビューが押されたときに再強調表示することは、良い解決策とは思えません。

UPD: lastPressedButton.requestFocus() を他のビューの OnFocusChangeListener に追加することで実行できます。他の多くのビューがある場合は明るすぎませんか、おそらく他の解決策はありますか?

4

1 に答える 1

1

android:focusable="false"フォーカス可能にしたくない他のすべてのフィールドに属性を追加してみてください。

于 2012-06-23T17:33:25.753 に答える