背景なしのダミー ビューを作成し、リストビューと同じレイアウトに配置します。フォーカス可能にし、検索ビューの nextFocusRight を id/dummy に設定します。
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:choiceMode="singleChoice"
android:listSelector="@null"
android:background="@null"
></ListView>
<View
android:id="@+id/dummy"
android:layout_width="1dp"
android:layout_height="1dp"
android:focusable="true"
/>
あなたの検索ビュー:
<YourSearchView
android:nextFocusItemRight=@+id/dummy/>
次に、コードで OnFocusChangedListener をダミー ビューに設定します。これは、ListView がフォーカスを取得することになっていることを示します。リスナー内で、リストビューのフォーカスをリクエストし、次のように選択を 0 に設定します。
View dummy = rootView.findViewById(R.id.dummy);
dummy.setOnFocusChangeListener(new View.OnFocusChangeListener()
{
@Override public void onFocusChange(View v, boolean hasFocus)
{
if (hasFocus)
{
listView.post(new Runnable() {
@Override
public void run() {
listView.requestFocus();
listView.setSelection(0);
}
});
}
}
});
@id の代わりに nextFocusItemRight に @+id を使用してください。それ以外の場合は、コメントを投稿してください。