0

私は SherlockActionbar を使用しており、アクションバーの ListNavigation スピナーを動的に入力したいと考えていました。問題は、リスト ナビゲーションに何も表示されないことです。ただし、アプリはエラーなしでエミュレーター上で実行されています。

アクティビティ コードは次のとおりです。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import android.content.Context;
import android.os.Bundle;
import android.widget.ArrayAdapter;

import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.view.Menu;

public class TestView extends SherlockFragmentActivity {

    private ArrayAdapter<String> listnav;

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getSupportMenuInflater().inflate(R.menu.test_view_menu, menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        final ActionBar ab = getSupportActionBar();
        ab.setDisplayShowTitleEnabled(false);
        ab.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
        Context context = ab.getThemedContext();
        setContentView(R.layout.test_view);

        List<String> items = new ArrayList<String>(Arrays.asList(getResources().getStringArray(R.array.testarray)));


        listnav = new ArrayAdapter<String>(context, R.layout.sherlock_spinner_item, items);
        listnav.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item);


    }

}

配列リソースのコードは次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="testarray">
        <item >2011</item>
        <item >2012</item>
    </string-array>

</resources>

この問題を解決しました。アクションバーのスピナーには、setListNavigationCallbacks でアクセスできます。 この方法の詳細については、ここをクリックしてください

4

1 に答える 1

0

この問題を解決しました。アクションバーのスピナーには、setListNavigationCallbacks でアクセスできます。この方法の詳細については、ここをクリックしてください

于 2012-07-30T23:24:39.860 に答える