安卓——多页面选项跳转

220 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路 安卓——多页面选项跳转

1 建布局页面

首先我们需要新建几个文件layout.xml

image-20211120114721521

在这里我有四个页面跳转所以我就需要写四个

我需要写一个manue来进行选项点击跳转:

2 编写 activity_main.java文件

java逻辑文件:

package com.example.menutopage;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
TextView text;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        text=(TextView)findViewById(R.id.Text1);

    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        // 调用父类方法来加入系统菜单
        super.onCreateOptionsMenu(menu);
        // 添加菜单项
        menu.add(
                1,          //组号
                1,          //唯一的ID号
                1,          //排序号
                "菜单项1"); //标题
        menu.add( 1, 2, 2,  "菜单项2");
        menu.add( 1, 3, 3,  "菜单项3");
        menu.add( 1, 4, 4,  "菜单项4");
        return true;


        }
//        点击菜单项跳转事件
public boolean onOptionsItemSelected(MenuItem item)
{
    switch (item.getItemId()){
//        响应菜单项
        case 1:
            setContentView(R.layout.one);
            break;
        case 2:
            setContentView(R.layout.two);
            break;
        case 3:
            setContentView(R.layout.there);
            break;
        case 4:
            setContentView(R.layout.four);
            break;
        default:
//            对于未处理的事件,交给父类处理。
            return super.onOptionsItemSelected(item);


    }
    return true;

}

}

选项菜单部分:

 public boolean onCreateOptionsMenu(Menu menu)
    {
        // 调用父类方法来加入系统菜单
        super.onCreateOptionsMenu(menu);
        // 添加菜单项
        menu.add(
                1,          //组号
                1,          //唯一的ID号
                1,          //排序号
                "菜单项1"); //标题
        menu.add( 1, 2, 2,  "菜单项2");
        menu.add( 1, 3, 3,  "菜单项3");
        menu.add( 1, 4, 4,  "菜单项4");
        return true;


        }
//        点击菜单项跳转事件
public boolean onOptionsItemSelected(MenuItem item)
{
    switch (item.getItemId()){
//        响应菜单项
        case 1:
            setContentView(R.layout.one);
            break;
        case 2:
            setContentView(R.layout.two);
            break;
        case 3:
            setContentView(R.layout.there);
            break;
        case 4:
            setContentView(R.layout.four);
            break;
        default:
//            对于未处理的事件,交给父类处理。
            return super.onOptionsItemSelected(item);


    }

选项菜单创建步骤:

  1. 调用父类方法来加入系统菜单

            super.onCreateOptionsMenu(menu);
    
  2. 添加菜单项

      menu.add(
                1,          //组号
                1,          //唯一的ID号
                1,          //排序号
                "菜单项1"); //标题
        menu.add( 1, 2, 2,  "菜单项2");
        menu.add( 1, 3, 3,  "菜单项3");
        menu.add( 1, 4, 4,  "菜单项4");
        return true;}
         //点击菜单项跳转事件
public boolean onOptionsItemSelected(MenuItem item)
{
  }

特別注意菜单跳转事件的编写。

  1. 响应菜单项

          case 1:
                setContentView(R.layout.one);
                break;
            case 2:
                setContentView(R.layout.two);
                break;
            case 3:
                setContentView(R.layout.there);
                break;
            case 4:
                setContentView(R.layout.four);
                break;
            default:
    
  2. 对于未处理的事件,交给父类处理。

      return super.onOptionsItemSelected(item);

3. 效果图:

下面是几个页面跳转。

1.img 2. image-20211120115631737 3. image-20211120115655285就基本是这样的效果,大家加油呀