3

ActionBarSherlock に 5 つの要素を持つスピナーがあります。item id画面の下部にある 2 つのボタンのいずれかをクリックして (図を参照)、のを変更したいspinner

ここに画像の説明を入力

これは関連するコードです:

    @Override
public void onCreate(Bundle savedInstanceState) {
/* ... some code ...*/
Context context = getSupportActionBar().getThemedContext();
ArrayAdapter<CharSequence> list = ArrayAdapter.createFromResource(context, R.array.arr_contents, R.layout.sherlock_spinner_item);
list.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item);
    getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
    getSupportActionBar().setListNavigationCallbacks(list, this);

    getSupportActionBar().setDisplayShowHomeEnabled(false);
    getSupportActionBar().setTitle(title);
/*... some other code ...*/
}


@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {

    switch(itemPosition) {
        case 0:
            // Do stuff
            break;
        case 1:
            // Do stuff
            break;
        case 2:
            // Do stuff
            break;
        case 3:
            // Do stuff
            break;
        case 4:
            // Do stuff
            break;
        default:
            // Do stuff
            break;
    }
    return true;
}

たとえば、スピナーの 3 番目の要素に移動するように呼び出してみましonNavigationItemSelected(3, R.array.arr_contents);たが、機能しません。どうすればいいですか?

4

1 に答える 1

6

確かではありませんが、おそらく:

getSupportActionBar().setSelectedNavigationItem(itemPosition);

ドキュメント

于 2013-04-02T18:02:13.700 に答える