0

アプリにアクション バー スピナーと 2 つのアクティビティがあります。データベースから入力されたスピナーは、両方のアクティビティで表示される必要があります。コードを複製せずに生成するにはどうすればよいですか? 静的メソッドなどを作成する必要がありますか?

private NotesDbAdapter mDbHelper;
private List<String> listUniqueCat;
int selectedPos;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_joke_details);
    mDbHelper = new NotesDbAdapter(this);
    mDbHelper.open();

    //this method returns list of strings from a database
    listUniqueCat = mDbHelper.getUniqueCategories();

    // create an array adapter to popluate dropdown list
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(
        getBaseContext(),
        android.R.layout.simple_spinner_dropdown_item, listUniqueCat);

    // enable dropdown list naaavigation in action bar
    getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);

    // defining navigation listiner
    ActionBar.OnNavigationListener navigationListener = new OnNavigationListener() {
        @Override
        public boolean onNavigationItemSelected(int itemPosition, long itemId)
        {
            selectedPos = getActionBar().getSelectedNavigationIndex();
            Toast.makeText(getBaseContext(), "selected index is "+ selectedPos ,
                                             Toast.LENGTH_LONG).show();

            return false;
        }
    };

    // setting dropdown items and item navigation listener for action bar
    getActionBar().setListNavigationCallbacks(adapter, navigationListener);
}
4

1 に答える 1