通过单击菜单按钮打开活动-Android Studio

时间:2019-04-26 16:46:50

标签: android android-intent android-activity

我是初学者我有几天遇到这个问题

我没有找到解决方案。我有一个出现在活动中的菜单,当我单击时,我希望它打开一个新活动。

我的问题是,用菜单将什么放入活动中,以及将新的活动放入什么中?

这是我的代码


Menu_chat.xml(我的菜单)

   android:id="@+id/salva_vida"
   android:icon="@drawable/salva_vida"
   android:title="@string/save_life"
   app:showAsAction="always" />

ChatActivity.java(这是带有菜单的活动)

 @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();

        switch (id) {
            case android.R.id.home:
                onBackPressed();
                return true;

            case R.id.salva_vida:
                ???????  (What put here?)------------------
                break;

tab2.java(这是新活动,我想打开它)

public class tab2 extends AppCompatActivity {

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

2 个答案:

答案 0 :(得分:1)

Intent mIntent = new Intent(this, tab2.class);
startActivity(mIntent);

您的ChatActivity.java如下所示:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();

    switch (id) {
        case android.R.id.home:
            onBackPressed();
            return true;

        case R.id.salva_vida:
            //Start Activity here
            Intent mIntent = new Intent(this, tab2.class);
            startActivity(mIntent);
            break;

答案 1 :(得分:0)

Intent mIntent =新的Intent(this,tab2.class); startActivity(mIntent);

@Override public boolean onOptionsItemSelected(MenuItem item){int id = item.getItemId();开关(id){case android.R.id.home:onBackPressed();返回true; case R.id.salva_vida://在此处开始活动Intent mIntent = new Intent(this,tab2.class); startActivity(mIntent);休息;

别忘了将tab2活动添加到清单中。