Wednesday 15 August 2012

ActionBarSherlock crashes on SearchView on Android 4.x -


अगर मैं इसका उपयोग करता हूं:

  @Override सार्वजनिक बूलियन onCreateOptionsMenu (मेनू मेनू) {// मेनू को बढ़ाना; यह एक्शन बार में आइटम जोड़ता है यदि यह मौजूद है GetSupportMenuInflater ()। फुलाएँ (आर.मेनू.मैन_मेनू, मेनू); Com.actionbarsherlock.widget.SearchView searchView = नया com.actionbarsherlock.widget.SearchView (Activity_TimetablePager.this); ...   

निम्न लॉग के साथ सिस्टम क्रैश:

  06-22 18: 18: 23.384: डी / शेरलॉक फ्रेग्मेंट गतिविधि (3613): [onCreatePanelMenu] featureId : 0, मेनू: com.android.internal.view.menu.MenuBuilder@af2ca820 06-22 18: 18: 23.384: डी / ActionBarSherlock (3613): [dispatchCreateOptionsMenu] मेनू: com.android.internal.view.menu.MenuBuilder @ af2ca820 06-22 18: 18: 23.384: डी / ActionBarSherlock (3613): [callbackCreateOptionsMenu] मेनू: com.actionbarsherlock.internal.view.menu.MenuWrapper@af2cc5c8 06-22 18: 18: 23.384: डी / वाटसन (3613 ): [onCreatePanelMenu] featureId: 0, मेनू: com.actionbarsherlock.internal.view.menu.MenuWrapper@af2cc5c8 06-22 18: 18: 23.384: डी / SherlockFragmentActivity (3613): [getSupportMenuInflater] 06-22 18:18: 23.384: डी / ActionBarSherlock (3613): [getMenuInflater] 06-22 18: 18: 23.384: डी / ActionBarSherlock (3613): [getActionBar] 06-22 18: 18: 23.384: डी / AndroidRuntime (3613): वीएम शटडाउन हो रहा है 06-22 18: 18: 23.384: डब्ल्यू / दालविकम् (3613): थ्रेडड = 1: बिना किसी अपवाद के साथ निकला धागा (समूह = 0xaecd 1908) 06-22 18: 18: 23.384: ई / एंड्रॉइड रेंटाइम (3613): फालतू अपवाद: मुख्य 06-22 18: 18: 23.384: ई / एंड्रॉइडरेंटाइम (3613): android.view.InflateException: बाइनरी XML फ़ाइल पंक्ति # 29 : कक्षा में वृद्धि करने में त्रुटि & lt; अज्ञात & gt; 06-22 18: 18: 23.384: ई / एंड्रॉइड रेंटाइम (3613): एंड्रॉइड के लिए। View.LayoutInflater.createView (LayoutInflater.java:613) 06-22 18: 18: 23.384: ई / एंड्रॉइडरेंटाइम (3613): कॉम पर Android.internal.policy.impl.PhoneLayoutInflater.onCreateView (PhoneLayoutInflater.java:56)   

यह एंड्रॉइड 2.3 पर ठीक काम करता है, लेकिन 4.x पर नहीं। मैं ActionBarSherlock 4.3.1, इस मामले में एक viewPager गतिविधि में उपयोग कर रहा हूँ। क्या यह एक ज्ञात मुद्दा है?

(वर्तमान में मेरे पास एक वैकल्पिक हल है जहां मैं डिफ़ॉल्ट एंड्रॉइड सर्च्यूव 4.x में उपयोग करता हूं।)

क्या आपने मेन्यू एक्सएमएल संसाधन में एक्शन व्यू क्लास सेट करने की कोशिश की है और onCreateOptionsMenu () ? < P> उदाहरण के लिए, अपने menu.xml में:

  & lt;? Xml संस्करण = "1.0" एन्कोडिंग = "यूटीएफ -8"? & Gt; & Lt; मेनू xmlns: एंड्रॉइड = "http://schemas.android.com/apk/res/android" & gt; & LT; आइटम एंड्रॉयड: आईडी = "@ + id / SEARCH_ITEM" एंड्रॉयड: title = "@ स्ट्रिंग / खोज" एंड्रॉयड: आइकन = "@ drawable / ic_menu_search" एंड्रॉयड: showAsAction = "ifRoom | collapseActionView" एंड्रॉयड: actionViewClass = "कॉम। Actionbarsherlock.widget.SearchView "/ & gt; & Lt; / मेनू & gt;   

फिर अपने कोड में:।

  @Override सार्वजनिक बूलियन onCreateOptionsMenu (मेनू मेनू) {getSupportMenuInflater () बढ़ (R.menu.main_menu, मेनू) ; MenuItem searchItem = menu.findItem (R.id.search_item); SearchView searchView = (SearchView) searchItem.getActionView (); ...}   

मैं अपने ऐप में इस सटीक पैटर्न का उपयोग करता हूं और मैंने 2.x या 4.x फोन पर कोई समस्या नहीं देखी है।

No comments:

Post a Comment