2012-05-24 19 views
5

मैं एंड्रॉइड में एक्शन बार के लिए नेविगेशन के रूप में एक ड्रॉप डाउन सूची को लागू करने की कोशिश कर रहा हूं। मैं ड्रॉप डाउन सूची और आइटम देख सकता हूं, लेकिन मुझे क्लिकिंग ईवेंट नहीं मिल रहा है।एंड्रॉइड: शेरलॉक एक्शन बार ड्रॉप डाउन

मुझे यकीन है कि मैं क्या http://developer.android.com/guide/topics/ui/actionbar.html

में याद कर रहा हूँ के बाद से मैं ट्यूटोरियल पीछा कर रहा था नहीं कर रहा हूँ यह मेरा कोड है:

public void onCreate(Bundle savedInstanceState) { 
     OnNavigationListener mOnNavigationListener; 
     super.onCreate(savedInstanceState); 
     // setContentView(R.layout.info_layout); 
     // getSupportActionBar().setHomeButtonEnabled(true); 
     getSupportActionBar().setDisplayShowTitleEnabled(false); 

     getSupportActionBar().setNavigationMode(getSupportActionBar().NAVIGATION_MODE_LIST); 
     SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(this, R.array.navigation_array, android.R.layout.simple_dropdown_item_1line); 
     mOnNavigationListener = new OnNavigationListener() { 
      public boolean onNavigationItemSelected(int itemPosition, long itemId) { 
       switch (itemPosition) { 
       case 1: 
        Intent i = new Intent(); 
        i.setClass(getApplicationContext(), ZoekAndBoekActivity.class); 
        break; 
       case 2: 
        break; 
       case 3: 
        break; 
       case 4: 
        break; 
       case 5: 
        break; 
       } 
       // return super.onOptionsItemSelected(itemPosition); 
       return true; 
      } 
     }; 
     getSupportActionBar().setListNavigationCallbacks(mSpinnerAdapter, mOnNavigationListener); 
    } 

अग्रिम धन्यवाद एक बहुत!

उत्तर

4

क्या आप वाकई क्लिक ईवेंट नहीं प्राप्त करते हैं? आप इरादा बना रहे हैं लेकिन इसके साथ कुछ भी नहीं करते हैं। सुनिश्चित करने के लिए लॉग इन करने के

switch (itemPosition) { 
    case 1: 
     Intent i = new Intent(); 
     i.setClass(getApplicationContext(), ZoekAndBoekActivity.class); 
     startActivity(i); 
     break; 
    ... 
} 

या जोड़ने के लेखन: कुछ इस तरह का प्रयास करें

public boolean onNavigationItemSelected(int itemPosition, long itemId) { 
    Log.d("SomeTag", "Get click event at position: " + itemPosition); 
    switch (itemPosition) { 
     ... 
    } 
} 

और "SomeTag" के साथ संदेश के लिए logcat उत्पादन में देखते हैं जब आप आइटम पर क्लिक करें।

+0

कुछ नहीं करता भी onNavigationItemSelected – noloman

+2

में प्रवेश नहीं करता है @noloman यदि आपका समाधान यहां दिया गया था उससे अलग है, तो अगर आप इसे पोस्ट करते हैं तो यह दूसरों के लिए सहायक होगा। –

+0

मैं चयनित स्थिति का आइटम कैसे प्राप्त कर सकता हूं? –

-1

मुझे लगता है कि वापसी कथन स्विच मामले के अंदर झूठी होना चाहिए, और अपने मामले, होना आवश्यक है कोष्ठक .. आशा है कि यह मदद करता है :)))

+1

एक केस स्टेटमेंट को ब्रैकेट की आवश्यकता नहीं होती है और प्रत्येक मामले को 'सत्य' वापस करने की आवश्यकता होती है। –

संबंधित मुद्दे