2017-01-24 10 views
7

कैसे सेट करें support V25 द्वारा। हमारे पास निचला नेविगेशन नामक नया घटक है।ऊंचाई को नीचे नेविगेशन

डिजाइन दिशानिर्देशों का पालन करें, नीचे नेविगेशन के elevation8dp (https://material.io/guidelines/components/bottom-navigation.html#bottom-navigation-specs)

होना चाहिए लेकिन मैं इसे करने के लिए elevation निर्धारित नहीं कर सकते।

कोई भी सुझाव, उदाहरण की सराहना की जाएगी। धन्यवाद!

अद्यतन XML कोड

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

<android.support.design.widget.BottomNavigationView 
    android:id="@+id/bottom_navigation" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:elevation="8dp" 
    app:elevation="8dp" 
    app:itemBackground="@color/colorPrimary" 
    app:itemIconTint="@drawable/bottom_nav_color_state" 
    app:itemTextColor="@drawable/bottom_nav_color_state" 
    app:menu="@menu/bottom_navigation_main"/> 

<FrameLayout 
    android:id="@+id/contentFrame" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_above="@id/bottom_navigation" 
    android:background="#EDEDED"/> 

+0

पोस्ट आपके XML नीचे नेविगेशन युक्त कोड। –

+0

जांचें [यह] (https://code.google.com/p/android/issues/detail?id=226182&sort=-id%20-stars%20-status&colspec=ID%20Status%20Priority%20Owner%20Summary%20Stars % 20 रिपोर्टर% 20 खोला गया) और [यह] (http://stackoverflow.com/questions/40316411/bottomnavigationview-shadow-and-ripple-effect) –

+0

इस दृष्टिकोण को आजमाएं: http://stackoverflow.com/questions/41650778/android -बॉटम-नेविगेशन-बार-साथ-ड्रॉप-छाया/41651284 # 41651284 –

उत्तर

21

तो, अब (25.1.0) हम छाया के लिए @android:color/white को BNV की android:background सेट करने के लिए के लिए। यदि आप अन्य रंग (यानी आपका प्राथमिक रंग) पर सेट करते हैं तो यह प्रदर्शित नहीं होगा

+0

एक आकर्षण की तरह काम नहीं कर सकता! धन्यवाद! समाधान की पुष्टि – Sjd

+2

। महत्वपूर्ण (और अजीब) हिस्सा यह है कि ** ** होना चाहिए 'सफेद' रंग ('एंड्रॉइड 'res या" custom "से - लेकिन अगर यह सफेद होना चाहिए तो इतना कस्टम नहीं है ...)। काले और किसी अन्य के साथ काम नहीं कर रहे हैं ... – snachmsm

+0

इस स्थिति में, यदि 'ऐप: एलिवेशन' का उपयोग किया जा रहा है, तो यह नेविगेशन व्यू के नीचे कुछ छाया जोड़ता है। अगर मैं नेविगेशन के शीर्ष पर छाया जोड़ना चाहता हूं, तो मुझे क्या करना चाहिए? @ NamNguyễn –

0

मेरे पास एक ही समस्या थी और @android:color/white था क्योंकि ओपी सुझाव दिया गया था कि मेरे मामले में स्वीकार्य नहीं है। इसलिए चूंकि हम ऊंचाई और कस्टम पृष्ठभूमि के साथ छाया नहीं प्राप्त कर सकते हैं, इसलिए हमें इसे हैक करने की आवश्यकता है।

मेरा दृष्टिकोण फ्रेम लेआउट के अंदर "नकल" ऊंचाई के लिए एक छाया दृश्य जोड़ रहा है।

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

<android.support.design.widget.BottomNavigationView 
    android:id="@+id/bottom_navigation" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:elevation="8dp" 
    app:elevation="8dp" 
    app:itemBackground="@color/colorPrimary" 
    app:itemIconTint="@drawable/bottom_nav_color_state" 
    app:itemTextColor="@drawable/bottom_nav_color_state" 
    app:menu="@menu/bottom_navigation_main"/> 

<FrameLayout 
    android:id="@+id/contentFrame" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_above="@id/bottom_navigation" 
    android:background="#EDEDED"/> 

    <some.kind.of.pager.or.other.content.ViewPager 
     android:id="@+id/viewpager" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"/> 

    <View 
     android:id="@+id/shadow_view" 
     android:layout_width="match_parent" 
     android:layout_height="4dp" 
     android:layout_gravity="bottom" 
     android:background="@drawable/shadow_gradient" /> 

</FrameLayout> 

जहां छाया देखने की पृष्ठभूमि एक आकार ढाल है कि बस नीचे नव दृश्य के ऊपर अन्य सभी के ऊपर स्थित है से ज्यादा कुछ नहीं, कुछ इस तरह है:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <gradient 
     android:angle="90" 
     android:endColor="@android:color/transparent" 
     android:startColor="#8f000000" /> 
</shape> 

आशा इस कोई मदद करता है।

0

यह काम करता है! ध्यान दें कि आप का उपयोग कर बॉटम बार का रंग बदल सकते:

"app:itemBackground="@color/white" 

लेकिन आप जोड़ने के लिए:

android:background="@android:color/white" 

पूरा:

<android.support.design.widget.BottomNavigationView 
    android:id="@+id/navigation" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:background="@android:color/white" 
    app:elevation="4dp" 
    app:itemBackground="@color/white" 
    app:itemIconTint="@color/grey" 
    app:itemTextColor="@color/grey" 
    app:menu="@menu/my_navigation_items" /> 
संबंधित मुद्दे