Как открыть занятие в каждом конкретном случае - PullRequest
0 голосов
/ 30 апреля 2018

У меня есть меню в панели действий, поэтому я хочу, чтобы в каждом случае открывалось действие. Я не могу понять, как это сделать. Моя первая деятельность о нас (просто просмотр текста)

//Override method for main menu
@Override
public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()) {
    case R.id.about_us:
        //open AboutUsActivity

        return(true);
    case R.id.about_measures:
        //add the function to perform here
        return(true);
    case R.id.feedback:
        //add the function to perform here
        return(true);
    case R.id.rate:
        //add the function to perform here
        return(true);
}
    return(super.onOptionsItemSelected(item));
}

Ответы [ 2 ]

0 голосов
/ 30 апреля 2018

Вам необходимо указать намерение, которое определяет вашу целевую деятельность и контекст вашей текущей деятельности. Примерно так:

case R.id.about_us:
    //open AboutUsActivity
    startActivity(new Intent(CurrentActivity.this, AboutUsActivity.class));
    return(true);
0 голосов
/ 30 апреля 2018

Вы можете просто передать свое намерение классу, который вы хотите открыть.

@Override
public boolean onOptionsItemSelected(MenuItem item) { 
Intent intent;
switch(item.getItemId()) {
    case R.id.about_us:
        //open AboutUsActivity
        intent = new Intent(this, aboutUsActivity.class);
        startActivity(intent);
        finish();
        return true;

    case R.id.about_measures:
        //add the function to perform here
        intent = new Intent(this, aboutMeasuresActivity.class);
        startActivity(intent);
        finish();
        return true;

    case R.id.feedback:
        //add the function to perform here
        intent = new Intent(this, feedbackActivity.class);
        startActivity(intent);
        finish();
        return true;

    case R.id.rate:
        //add the function to perform here
        intent = new Intent(this, rateActivity.class);
        startActivity(intent);
        finish();
        return true;
  }
    return(super.onOptionsItemSelected(item));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...