Нижняя навигация, чтобы открыть новое действие - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь использовать вид снизу навигации, чтобы при щелчке открыть другое действие. По какой-то причине я получаю сообщение об ошибке в последней строке, которое должно определить функцию щелчка. Я проверил его на другом проекте, и он отлично работал.

Вот конец моей деятельности:

private BottomNavigationView.OnNavigationItemSelectedListener 
mOnNavigationItemSelectedListener
        = new BottomNavigationView.OnNavigationItemSelectedListener() {

    @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        switch (item.getItemId()) {
            case R.id.navigation_home:
                Intent kampIntent = new Intent(SortimentActivity.this, CampaignActivity.class);
                startActivity(kampIntent);
                mTextMessage.setText(R.string.title_home);
                break;
            case R.id.navigation_dashboard:
                mTextMessage.setText(R.string.title_dashboard);
                break;
        }
        return false;


        BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
        navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
    }

Я попробовал точно такой же код в другом проекте, и это сработало. ошибка , которую я здесь получаю, равна

«Не удается разрешить символ» .setOnNavigationItemSelectedListener (mOnNavigationItemSelectedListener);

Есть идеи, что здесь пошло не так?

1 Ответ

0 голосов
/ 12 сентября 2018

Ошибка говорит вам, что он не находит mOnNavigationItemSelectedListener, потому что вы вызываете его внутри его определения

Вы должны переместить эти две строки за пределы объявления слушателя.Поместите их в метод onCreate, например:

BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...