今日总结-安卓页面跳转
一.主要学习了一些进行页面跳转的方法
(1)法一:显示意图(也是我主要掌握的方法)
第个页面实现跳转代码:
第一个页面实现跳转代码:
Intent intent=new Intent(MainActivity.this,MainActivity2.class);//跳转页面 启动意图
//通过意图传递数据
intent.putExtra("UserName","彭锁群");
intent.putExtra("Sex",true);
intent.putExtra("aihao",new String[]{"旅游","读书"});
startActivity(intent);//执行意图
跳转到第二个页面接受数据方法:
Intent intent=this.getIntent(); String name=intent.getStringExtra("UserName"); int age=intent.getIntExtra("age",-1);//取不到值就取-1 String[] hobby=intent.getStringArrayExtra("aihao");//获取前一个页面的字符串数组 Toast.makeText(this,hobby[0]+name,Toast.LENGTH_LONG).show();
(2)法二:隐式意图:
1、调用隐式意图跳转至设置-应用详情界面:
Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); intent.setData(Uri.fromParts("package", getPackageName(), null)); startActivity(intent);
2、调用隐式意图跳转至设置-应用通知设置界面:
try { Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); //Android 8.0以上 intent.putExtra(Settings.EXTRA_APP_PACKAGE, getPackageName()); intent.putExtra(Settings.EXTRA_CHANNEL_ID, getApplicationInfo().uid); //Android 5.0 ~ Android 7.1 intent.putExtra("app_package", getPackageName()); intent.putExtra("app_uid", getApplicationInfo().uid); startActivity(intent); } catch (Exception e) { e.printStackTrace(); Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); intent.setData(Uri.fromParts("package", getPackageName(), null)); startActivity(intent); }