मुझे लगता है कि आप इसके लिए देख रहे होंगे।
आरंभ करने के लिए यहां एक त्वरित स्निपेट है:
public class MainActivity extends AppCompatActivity {
private BottomBar mBottomBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Notice how you don't use the setContentView method here! Just
// pass your layout to bottom bar, it will be taken care of.
// Everything will be just like you're used to.
mBottomBar = BottomBar.bind(this, R.layout.activity_main,
savedInstanceState);
mBottomBar.setItems(
new BottomBarTab(R.drawable.ic_recents, "Recents"),
new BottomBarTab(R.drawable.ic_favorites, "Favorites"),
new BottomBarTab(R.drawable.ic_nearby, "Nearby"),
new BottomBarTab(R.drawable.ic_friends, "Friends")
);
mBottomBar.setOnItemSelectedListener(new OnTabSelectedListener() {
@Override
public void onItemSelected(final int position) {
// the user selected a new tab
}
});
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mBottomBar.onSaveInstanceState(outState);
}
}
यहाँ संदर्भ लिंक है।
https://github.com/roughike/BottomBar
EDIT नई विज्ञप्ति।
नीचे का नेविगेशन दृश्य कुछ समय के लिए सामग्री डिजाइन दिशानिर्देशों में रहा है, लेकिन हमारे लिए इसे अपने ऐप्स में लागू करना आसान नहीं है। कुछ अनुप्रयोगों ने अपने स्वयं के समाधान का निर्माण किया है, जबकि अन्य लोगों ने काम पाने के लिए तीसरे पक्ष के ओपन-सोर्स पुस्तकालयों पर भरोसा किया है। अब डिज़ाइन सपोर्ट लाइब्रेरी इस नीचे नेविगेशन बार के जोड़ को देख रही है, आइए एक डुबकी लें कि हम इसका उपयोग कैसे कर सकते हैं!
कैसे इस्तेमाल करे ?
शुरू करने के लिए हमें अपनी निर्भरता को अपडेट करने की आवश्यकता है!
compile ‘com.android.support:design:25.0.0’
डिजाइन xml।
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- Content Container -->
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:itemBackground="@color/colorPrimary"
app:itemIconTint="@color/white"
app:itemTextColor="@color/white"
app:menu="@menu/bottom_navigation_main" />
</RelativeLayout>
अपनी आवश्यकता के अनुसार मेनू बनाएं।
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_favorites"
android:enabled="true"
android:icon="@drawable/ic_favorite_white_24dp"
android:title="@string/text_favorites"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_schedules"
android:enabled="true"
android:icon="@drawable/ic_access_time_white_24dp"
android:title="@string/text_schedules"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_music"
android:enabled="true"
android:icon="@drawable/ic_audiotrack_white_24dp"
android:title="@string/text_music"
app:showAsAction="ifRoom" />
</menu>
विकलांग / विकलांग राज्यों को संभालना। चयनकर्ता फ़ाइल बनाएँ।
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_checked="true"
android:color="@color/colorPrimary" />
<item
android:state_checked="false"
android:color="@color/grey" />
</selector>
क्लिक इवेंट्स को हैंडल करें।
BottomNavigationView bottomNavigationView = (BottomNavigationView)
findViewById(R.id.bottom_navigation);
bottomNavigationView.setOnNavigationItemSelectedListener(
new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.action_favorites:
break;
case R.id.action_schedules:
break;
case R.id.action_music:
break;
}
return false;
}
});
संपादित करें: Androidx का उपयोग करके आपको बस नीचे निर्भरता जोड़ने की आवश्यकता है।
implementation 'com.google.android.material:material:1.2.0-alpha01'
ख़ाका
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.bottomnavigation.BottomNavigationView
android:layout_gravity="bottom"
app:menu="@menu/bottom_navigation_menu"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</FrameLayout>
यदि आप इसके तरीकों के बारे में अधिक पढ़ना चाहते हैं और यह कैसे काम करता है यह पढ़ें।
निश्चित रूप से यह आपकी मदद करेगा।