Wie unterscheide ich zwei Menüpunkt-Klicks in ActionBarSherlock?

Ich habe vor kurzem mit ActionBarSherlock gearbeitet und folgte verschiedenen Tutorials, ich schrieb diesen Code, um Elemente zur Action Bar hinzuzufügen

@Override public boolean onCreateOptionsMenu(Menu menu) { menu.add("Refresh") .setIcon(R.drawable.ic_action_refresh) .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); menu.add("Search")// Search .setIcon(R.drawable.ic_action_search) .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); return true; } 

Allerdings weiß ich nicht, wie man die beiden Klicks unterscheidet.

Obwohl ich herausgefunden habe, dass Sie OverOide onOptionsItemSelected haben müssen, um die Klicks zu behandeln, und auch, dass eine switch-Anweisung verwendet werden kann, um zwischen den Klicks zu unterscheiden, aber die meisten Tutorials verwenden Artikel-IDs aus ihren xml-Menüs. Da ich keine Menüs in xml schreibe, wie kann ich die Klicks ohne ID unterscheiden?

  • Wie zeigt man das Menü Popup genau unterhalb der Aktionsleiste an?
  • So ändern Sie die Farbe des ausgewählten Tabs
  • Aktionsleisten-Navigationsmodi sind in Android L veraltet
  • Android Honeycomb: Wie Stil richtige Ecke Pfeil in Spinner auf einer ActionBar
  • Titel in der Symbolleiste in appcompat-v7 entfernen
  • Setzen eines Untertitels auf meiner Symbolleiste aus einem Fragment
  • HomeAsUpIndicator Styles gelten nicht auf Standard-Android Studio-Projekt
  • Wie füge ich der ActionBar ein SearchWidget hinzu?
  • 3 Solutions collect form web for “Wie unterscheide ich zwei Menüpunkt-Klicks in ActionBarSherlock?”

     private static final int REFRESH = 1; private static final int SEARCH = 2; @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(0, REFRESH, 0, "Refresh") .setIcon(R.drawable.ic_action_refresh) .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); menu.add(0, SEARCH, 0, "Search") .setIcon(R.drawable.ic_action_search) .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case REFRESH: // Do refresh return true; case SEARCH: // Do search return true; default: return super.onOptionsItemSelected(item); } } 

    Bitte benachrichtige dich

     http://developer.android.com/guide/topics/ui/actionbar.html 

    was beinhaltet

     @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { <--- here you can get it case android.R.id.home: // app icon in action bar clicked; go home Intent intent = new Intent(this, HomeActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); return true; default: return super.onOptionsItemSelected(item); } } 

    Du kannst ti da drüben Id in onOptionsItemSelected ……………. das kann auch hier gesetzt werden

    http://thedevelopersinfo.wordpress.com/2009/10/29/handling-options-menu-item-selections-in-android/

    http://developer.android.com/reference/android/view/Menu.html#add(int , int, int, java.lang.CharSequence)

     use public abstract MenuItem add (int groupId, int itemId, int order, CharSequence title) Since: API Level 1 Add a new item to the menu. This item displays the given title for its label. Parameters groupId The group identifier that this item should be part of. This can be used to define groups of items for batch state changes. Normally use NONE if an item should not be in a group. itemId Unique item ID. Use NONE if you do not need a unique ID. order The order for the item. Use NONE if you do not care about the order. See getOrder(). title The text to display for the item. Returns The newly added menu item. 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.