2011-08-27 19 views
8

मैंने एक कस्टम टाइटल बार सेट करने की कोशिश की जिसमें स्पिनर ऑब्जेक्ट शामिल है लेकिन हर बार उसने मुझे नामक अपवाद दिया "आप अन्य शीर्षक सुविधाओं के साथ कस्टम शीर्षक को गठबंधन नहीं कर सकते"। मैंने साइट पर एक समाधान साइट खोजने की खोज की और नेट पर वर्णित अनुसार मैंने सबकुछ ठीक से किया लेकिन अपवाद कभी गायब नहीं हुआ। मेरे दिमाग पर एक बहुत ही मूर्ख सवाल है कि यह एंड्रॉइड 3.0 से संबंधित हो सकता है? मैं संस्करण 3.0 (हनीकॉम) के साथ विकास कर रहा हूं। मुझे नहीं पता कि मुझे क्या करना चाहिए।मैं गतिविधि के शीर्षक पट्टी में स्पिनर कैसे जोड़ूं?

धन्यवाद एडैम्प, मैंने इसे आपके मार्गदर्शन के साथ बनाया है। स्पिनर उदाहरण के साथ यहां एक सरल एक्शन बार है। किसी ऐसे व्यक्ति की मदद कर सकते हैं जो समान समस्या का सामना कर रहा हो।

super.onCreate(savedInstanceState); 
    setContentView(R.layout.screens); 
    ActionBar bar = getActionBar(); 
    bar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 
    bar.setListNavigationCallbacks(new SpinnerAdapter(this, android.R.layout.simple_dropdown_item_1line, EczaneMgr.getInstance(this).getEczaneListAsSpinner()), 
      new OnNavigationListener() { 
      @Override 
      public boolean onNavigationItemSelected(int position, long itemId) { 
      Log.e("item position",String.valueOf(position)); 
      return true; 
      //do whatever want to do... 
      } 
     } 
    ); 
+0

कृपया प्रासंगिक कोड दिखाएं ताकि कोई भी मदद कर सके। –

उत्तर

7

एंड्रॉइड 3.0+ पर उपयोग की जाने वाली एक्शन बार को शीर्षक सुविधा माना जाता है, और यदि आप होलो थीम में से किसी एक का उपयोग कर रहे हैं तो आपकी गतिविधि डिफ़ॉल्ट रूप से एक प्राप्त होगी। (Theme.Holo, Theme.Holo.Light, आदि) Theme.Holo targetSdkVersion="11" या ऊपर वाले ऐप्स के लिए डिफ़ॉल्ट है। पुरानी "कस्टम टाइटल बार" सुविधा को एक्शन बार के साथ जोड़ा नहीं जा सकता है, लेकिन आप इसके बजाय ऐसा करने के लिए एक्शन बार का उपयोग कर सकते हैं।

स्पिनर दृश्यों की आपूर्ति करने वाले एडाप्टर को निर्दिष्ट करने के लिए ActionBar#setNavigationMode और ActionBar#setListNavigationCallbacks का उपयोग करके एक्शन बार की सूची नेविगेशन मोड का उपयोग करें।

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