Android 中實(shí)現(xiàn)底部導(dǎo)航欄有多種方法,以下是其中兩種常見(jiàn)的方式:
implementation 'com.android.support:design:28.0.0'
然后,在布局文件中添加 BottomNavigationView 控件,并設(shè)置菜單項(xiàng)和點(diǎn)擊事件:
<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:menu="@menu/bottom_navigation_menu"
app:itemIconTint="@drawable/bottom_navigation_color_selector"
app:itemTextColor="@drawable/bottom_navigation_color_selector"
app:labelVisibilityMode="unlabeled"
/>
接著,在代碼中設(shè)置點(diǎn)擊事件監(jiān)聽(tīng)器:
BottomNavigationView bottomNavigationView = findViewById(R.id.bottom_navigation);
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
// 處理導(dǎo)航欄點(diǎn)擊事件
switch (item.getItemId()) {
case R.id.navigation_item1:
// 處理導(dǎo)航欄第一個(gè)菜單項(xiàng)的點(diǎn)擊事件
return true;
case R.id.navigation_item2:
// 處理導(dǎo)航欄第二個(gè)菜單項(xiàng)的點(diǎn)擊事件
return true;
case R.id.navigation_item3:
// 處理導(dǎo)航欄第三個(gè)菜單項(xiàng)的點(diǎn)擊事件
return true;
}
return false;
}
});
Button button1 = findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 處理導(dǎo)航欄第一個(gè)按鈕的點(diǎn)擊事件
}
});
Button button2 = findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 處理導(dǎo)航欄第二個(gè)按鈕的點(diǎn)擊事件
}
});
Button button3 = findViewById(R.id.button3);
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 處理導(dǎo)航欄第三個(gè)按鈕的點(diǎn)擊事件
}
});
以上是兩種常見(jiàn)的實(shí)現(xiàn)底部導(dǎo)航欄的方式,具體可以根據(jù)項(xiàng)目需求選擇適合的方法。