本文已参与「新人创作礼」活动,一起开启掘金创作之路 安卓——多页面选项跳转
1 建布局页面
首先我们需要新建几个文件layout.xml
在这里我有四个页面跳转所以我就需要写四个
我需要写一个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);
}
选项菜单创建步骤:
-
调用父类方法来加入系统菜单
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)
{
}
特別注意菜单跳转事件的编写。
-
响应菜单项
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);
3. 效果图:
下面是几个页面跳转。
1.
2.
3.
就基本是这样的效果,大家加油呀