Search code examples
eclipseandroid-activityandroid-actionbaractionbarsherlockmenuitem

How can i start an Activity from my sherlock ActionBar Item?


how can I start any activity from my sherlock ActionBar Item Navigation Menu? This is my code (i've tried with toast for now and function).

public class MainActivity extends SherlockActivity implements OnNavigationListener  {

private String[] pasti;

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    pasti = getResources().getStringArray(R.array.Pasti);

    Context context = getSupportActionBar().getThemedContext();
    ArrayAdapter<CharSequence> list = ArrayAdapter.createFromResource(context, R.array.Pasti, R.layout.sherlock_spinner_item);
    list.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item);
    getSupportActionBar().setSubtitle("The Subtitle");

    getSupportActionBar().setDisplayShowTitleEnabled(true);

    getSupportActionBar().setDisplayShowCustomEnabled(false);

    getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
    getSupportActionBar().setListNavigationCallbacks(list, this);

    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

   getSupportActionBar().setDisplayUseLogoEnabled(true);

    getSupportActionBar().setDisplayShowHomeEnabled(true);   
}
 @Override
    public boolean onNavigationItemSelected(int itemPosition, long itemId) {
     Toast toast=Toast.makeText(this,"Selected: " + pasti[itemPosition],Toast.LENGTH_LONG);
       toast.show();
       return true;
    }

}

` please help. thanks


Solution

  • I've solved with this code:

     switch (itemPosition) {
            case 1:
                Intent primi = new Intent();
                primi.setClass(getApplicationContext(), PrimiPiatti.class);
                startActivity(primi);
                break;
            case 2:
                break;
            case 3:
                break;
    
            }
            // return super.onOptionsItemSelected(itemPosition);
            return true;
        }
    };
    getSupportActionBar().setListNavigationCallbacks(mSpinnerAdapter, mOnNavigationListener);
    

    }

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