2014-10-30 17 views
7

पर एक्शन बार स्प्लिट करें क्या किसी को पता है कि स्प्लिट एक्शन बार कब एंड्रॉइड 5.0 से संकीर्ण फीचर को हटा दिया गया था? ऐसा लगता है कि इसका अब लेआउट पर कोई प्रभाव नहीं पड़ता है।एंड्रॉइड 5.0 (लॉलीपॉप)

+5

अब आप एक नीचे और शीर्ष टूलबार प्रदान करते हैं प्रणाली – tyczj

+0

नहीं है कि हम कैसे इस पश्च संगतता के लिए क्या करते हो? जब टैगेट एसडीके 21 होता है और एपकोम्पेट लाइब्रेरी स्तर 21 पर भी होती है, तो सिस्टम एक्शनबार को विभाजित करता है, लेकिन मैं शीर्ष पर एक खाली सफेद पट्टी के साथ शीर्ष पर क्रैश की गई सभी एक्शन आइटम्स देखता हूं। – iTapAndroid

+2

जहां तक ​​मैंने देखा है, आपको नीचे एक टूलबार लागू करने की आवश्यकता है जिसे आप नीचे रखते हैं। एक बड़ा मुद्दा नहीं होना चाहिए। जो अभी तक मुझे पता नहीं लगा सका क्योंकि मेरे पास एक्शन बार पर आइकनों को समान रूप से वितरित करना बहुत कम समय था। – Florian

उत्तर

9

के बाद से इस सवाल का वास्तव में से पहले उत्तर नहीं दिया गया ...

किसी को भी पता है अगर विभाजन कार्रवाई बार जब संकीर्ण सुविधा Android 5.0 से हटा दिया गया था?

हाँ, it was, हालांकि that change is not documented समस्या ट्रैकर प्रविष्टि के बाहर ही।

3

जैसा कि कहा गया है कि आप एक्शन बार को विभाजित नहीं कर सकते हैं, हालांकि आप टूलबार के साथ एक बेहतर परिणाम प्राप्त कर सकते हैं।

Toolbar toolbarBottom = (Toolbar) findViewById(R.id.toolbar_bottom); 
    toolbarBottom.inflateMenu(R.menu.menu_bottom); 
    toolbarBottom.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() { 
     @Override 
     public boolean onMenuItemClick(MenuItem menuItem) { 
      //your code 
      return false; 
     } 
    }); 

यह कहना है कि इस सुविधा appcompat समर्थन

compile "com.android.support:appcompat-v7:21.0.+" 

आप भी अपने लेआउट में उपकरण पट्टी घोषित करने के लिए की आवश्यकता होगी के साथ पीछे संगत है महत्वपूर्ण है।

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical"> 

<android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="?attr/colorPrimary" 
    android:minHeight="?attr/actionBarSize" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" /> 

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar_bottom" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:background="?attr/colorPrimary" 
    android:minHeight="?attr/actionBarSize"/> 

    <LinearLayout 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingTop="?attr/actionBarSize" 
    android:layout_above="@id/toolbar" 
    android:layout_below="@id/toolbar_bottom" /> 
</LinearLayout> 

0

अन्य उत्तर की तरह आप कोडिंग से सीधे मेनू एक्सएमएल फ़ाइलें के साथ अपने स्वयं सलाखों बना सकते हैं।
टूलबार हमेशा दो या दो से अधिक आइटम दिखाई नहीं देगा, लेकिन आप टूलबार को हमेशा दिखाई देने वाले एक्शन बटन दिखाने के लिए मजबूर कर सकते हैं और अतिप्रवाह क्रियाएं स्वचालित रूप से एक विकल्प मेनू बनाती हैं।
अन्य मूल अनुकूलन xml फ़ाइलों द्वारा किया जा सकता है।
कोड:

final Toolbar lowerTool=(Toolbar)findViewById(R.id.lower_toolbar); 
     lowerTool.inflateMenu(R.menu.lower_toolbar_menu); 
     lowerTool.getMenu().findItem(com.tvf.emag.R.id.action_previous).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT| MenuItem.SHOW_AS_ACTION_IF_ROOM); 
     lowerTool.getMenu().findItem(com.tvf.emag.R.id.action_previous).setEnabled(mPager.getCurrentItem() > 0); 
     lowerTool.getMenu().add(Menu.NONE, com.tvf.emag.R.id.action_next, Menu.NONE, 
       (mPager.getCurrentItem() == mPagerAdapter.getCount() - 1) 
         ? com.tvf.emag.R.string.action_finish 
         : com.tvf.emag.R.string.action_next); 
     lowerTool.getMenu().findItem(com.tvf.emag.R.id.action_next).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT| MenuItem.SHOW_AS_ACTION_IF_ROOM); 
     lowerTool.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() { 
      @Override 
      public boolean onMenuItemClick(MenuItem menuItem) { 
       switch (menuItem.getItemId()) { 
        case com.tvf.emag.R.id.action_previous: 
         mPager.setCurrentItem(mPager.getCurrentItem() - 1); 
         return true; 
        case com.tvf.emag.R.id.action_next: 
         mPager.setCurrentItem(mPager.getCurrentItem() + 1); 
         return true; 
       } 
       return true; 
      } 
     }); 
संबंधित मुद्दे