gpt4 book ai didi

android - 如何禁用底部栏中已选择的项目

转载 作者:行者123 更新时间:2023-11-29 15:43:22 26 4
gpt4 key购买 nike

菜单底部.xml

<?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/checkin_item"
android:icon="@drawable/ic_nearby"
android:title="CheckIn"
android:orderInCategory="100"
app:showAsAction="always"/>
<item
android:id="@+id/message_item"
android:icon="@drawable/ic_message"
android:title="Message"
android:orderInCategory="100"
app:showAsAction="always"/>
<item
android:id="@+id/friends_item"
android:icon="@drawable/ic_friends"
android:title="Friend"
android:orderInCategory="100"
app:showAsAction="always"/>
<item
android:id="@+id/notification_item"
android:icon="@drawable/ic_notifications"
android:title="Notification"
android:orderInCategory="100"
app:showAsAction="always"/>

Activity

    bottomBar = BottomBar.attach(findViewById(R.id.navigation_view), savedInstanceState);

bottomBar.setItemsFromMenu(R.menu.menu_bottom, new OnMenuTabClickListener() {
@Override
public void onMenuTabSelected(int itemId) {
switch (itemId) {
case R.id.checkin_item:
Snackbar.make(drawerLayout, "Recent Item Selected", Snackbar.LENGTH_LONG).show();
break;
case R.id.message_item:
Snackbar.make(drawerLayout, "Favorite Item Selected", Snackbar.LENGTH_LONG).show();
break;
case R.id.friends_item:
Snackbar.make(drawerLayout, "Location Item Selected", Snackbar.LENGTH_LONG).show();
break;
case R.id.notification_item:
Snackbar.make(drawerLayout, "Location Item Selected", Snackbar.LENGTH_LONG).show();
break;
default:
bottomBar.setSelected(false);
bottomBar.clearFocus();
break;
}
}
@Override
public void onMenuTabReSelected(int itemId) {
switch (itemId) {
case R.id.checkin_item:
Snackbar.make(drawerLayout, "Recent Item Selected", Snackbar.LENGTH_LONG).show();
break;
case R.id.message_item:
Snackbar.make(drawerLayout, "Favorite Item Selected", Snackbar.LENGTH_LONG).show();
break;
case R.id.friends_item:
Snackbar.make(drawerLayout, "Location Item Selected", Snackbar.LENGTH_LONG).show();
break;
case R.id.notification_item:
Snackbar.make(drawerLayout, "Location Item Selected", Snackbar.LENGTH_LONG).show();
break;
default:
bottomBar.setSelected(false);
bottomBar.clearFocus();
break;
}
}

问题

底部栏已经选择了第一个项目。我想禁用它。因此,当应用程序运行时,不会选择任何内容。

https://github.com/roughike/BottomBar/blob/master/README.md#common-problems-and-solutions

使用了这个底栏。

最佳答案

我猜现在您必须执行以下两种解决方法中的任何一种。

1) 选择其他一些默认选项卡,使用:

bottomBar.setDefaultTabPosition(someIndexOfYOurChoiceFromMenuItems);

例如:你可以设置

bottomBar.setDefaultTabPosition(1);

默认选择选项卡中的第二项:

<item android:id="@+id/message_item"
android:icon="@drawable/ic_message"
android:title="Message"
android:orderInCategory="100"
app:showAsAction="always"/>

2) 为保持不可见的选项卡添加一个虚拟菜单项

添加:

<item android:id="@+id/none"
android:title=""/>

在其他项目之前。这使它成为默认选择的第一个项目。

关于android - 如何禁用底部栏中已选择的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36959955/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com