Как решить частную логическую ошибку в Android Studio

#java #android #android-studio

#ява #Android #android-studio #java

Вопрос:

Код , содержащий ошибку, является:

 public class HomeActivity extends AppCompatActivity {

    BottomNavigationView bottomNavigation;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);

 bottomNavigation = (BottomNavigationView) findViewById(R.id.bottomNavigation);
        bottomNavigation.setOnNavigationItemReselectedListener(navigation);

    }

    private BottomNavigationView.OnNavigationItemReselectedListener navigation =
            new BottomNavigationView.OnNavigationItemReselectedListener() {
                @Override
                public boolean onNavigationItemReselected(@NonNull MenuItem item) {

                    switch (item.getItemId())
                    {
                        case R.id.home:
                            Toast.makeText(HomeActivity.this, "HOME", Toast.LENGTH_SHORT).show();
                            break;

                        case R.id.category:
                            Toast.makeText(HomeActivity.this, "CATEGORY", Toast.LENGTH_SHORT).show();
                            break;
                    }
                    return true;

                }
            };
}
  

Ошибку можно увидеть на этом скриншоте.

Код показывает всплывающее окно с текстом, соответствующим выбранному виду.

Комментарии:

1. onNavigationItemReselected возвращает void не boolean

Ответ №1:

Вы используете OnNavigationItemReselectedListener прослушиватель. Метод onNavigationItemReselected должен возвращать void вместо boolean .

Может быть, вы ищете BottomNavigationView.OnNavigationItemSelectedListener слушателя.

Комментарии:

1. да, я меняю «повторно выбрано» на «выбрано», и это работает …. хахаха … большое спасибо

Ответ №2:

Сначала проверьте свой идентификатор категории в файле меню. Содержит его или нет

Комментарии:

1. Да, это есть в моих меню

2. Хорошо, пожалуйста, попробуйте изменить идентификатор, подобный category, на category_id