針對按鍵控制的裝置,比如Android機頂盒等,在此簡單介紹一下使ListView中選擇條迴圈切換的方法,可以依次類推到所有想要進行迴圈選擇的控制元件上。
一、ListView的迴圈切換
在onKeyDown()中判斷上下按鍵:複製程式碼
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DPAD_UP){
//當選擇條到最上面時,再按上則選擇最後一個
if (lvSelectOne.getSelectedItemPosition() == 0){
lvSelectOne.setSelection(lvSelectOne.getCount() - 1);
return true;
}
}
if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN){
//當選擇條到最下面時,再按下則選擇最後第一個
if (lvSelectOne.getSelectedItemPosition() == (lvSelectOne.getCount() - 1)){
lvSelectOne.setSelection(0);
return true;
}
}
return super.onKeyDown(keyCode, event);
}複製程式碼
二、其他控制元件的實現
只要將按鍵條件中的判斷條件更改一下即可:複製程式碼
//當首尾端控制元件獲得焦點時,讓另一端的控制元件獲取焦點
if (lvSelectOne.isFocused()){
lvSelectTwo.requestFocus();
return true;
}複製程式碼
三、總結
ListView或控制元件的選擇迴圈切換的效果實現還是比較簡單的,把握住規律就行,如果對本文有什麼意見和問題歡迎指正,如果覺得本文可以,請幫忙點個贊,謝謝觀看。