做一個虛擬視圖沒有背景,並將其放置在相同的佈局爲您的列表視圖。 使其焦點集中並將搜索視圖的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:[email protected]+id/dummy/>
然後在代碼中,設置一個OnFocusChangedListener到虛擬視圖,這將表明的ListView應該獲得焦點。在監聽器裏,要求重點用於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。 希望它有幫助,否則發表評論。
您能簡單介紹一下您的實際需求嗎? @Boopathi。什麼是側邊欄?這是一個觀點還是什麼?如果可以,請發佈佈局xml。 – 2014-10-17 10:26:28
@Boopathi在默認情況下始終關注listview的第一項。我認爲你有getView()方法適配器的條件。 – Lokesh 2014-10-18 06:52:38
http://dev.booknow.club/api/category.php?format=json http://dev.booknow.club/api/listing.php?category_id=1&format=json – Boopathi 2014-10-18 08:19:13