Andrain
Andrain

Reputation: 910

dropdown navigation in actionbar cannot reslove to type

I want to set spinner navigation in android but i'm getting errors on TitlenagivationAdatper and spinnerNavItem as they both cannot resolve to a type, also i tried cleaning the project and importing is also not working.

 ActionBar actionBar;
 // Title navigation Spinner data
 private ArrayList<SpinnerNavItem> navSpinner;
 private TitleNavigationAdapter navAdapter; 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.slides);

        actionBar = getActionBar();
        actionBar.show();           

        // Enabling Spinner dropdown navigation
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);

        // Spinner title navigation data
        navSpinner = new ArrayList<SpinnerNavItem>();
        navSpinner.add(new SpinnerNavItem("Local",""));
        navSpinner.add(new SpinnerNavItem("My Places",""));
        navSpinner.add(new SpinnerNavItem("Checkins",""));


        // title drop down adapter
        adapter = new TitleNavigationAdapter(getApplicationContext(), navSpinner);

        // assigning the spinner navigation     
        actionBar.setListNavigationCallbacks(adapter, this);


} 
    @Override
    public boolean onNavigationItemSelected(int arg0, long arg1) {
        // TODO Auto-generated method stub
        return false;
    }

I don't know where is the mistake. Please guide me. Thanks

Upvotes: 0

Views: 27

Answers (1)

Hussein El Feky
Hussein El Feky

Reputation: 6707

You should do it like this:

ActionBar actionBar;
private String[] navSpinner;
private ArrayAdapter<String> navAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.slides);

    actionBar = getActionBar();
    actionBar.setDisplayShowTitleEnabled(false);
    actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);

    navSpinner = {"Local", "My Places", "Checkins"};
    navAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, navSpinner);

    actionBar.setListNavigationCallbacks(navAdapter, this);
}

@Override
public boolean onNavigationItemSelected(int position, long id) {
    switch (position) {
        case 0:
            //Write your code here when item selected is "Local"
            break;
        case 1:
            //Write your code here when item selected is "My Places"
            break;
        case 2:
            //Write your code here when item selected is "Checkins"
            break;
    }
    return true;
}

Upvotes: 1

Related Questions