意图的应用场景:一般开启系统的应用用隐式意图 开启自己应用的界面用显示意图
1,隐式意图 :通过指定一组动作和数据来开启页面
public void click2(View v) {
//[1]创建一个意图对象
Intent intent = new Intent();
//[2]设置要拨打动作
intent.setAction("com.itheima.jumpactivity");
//[3]设置category:为执行这个动作提供的一个环境
intent.addCategory("android.category.DEFAULT");
//[4]匹配意图过滤器里面的data
// intent.setData(Uri.parse("itha:"+11111));
//[5]设置tyle 会自动清除setdata方法里面的数据
//intent.setType("aa/bb");
//[6]★★★当setdata方法和settype方法同时使用的时候 应该使用下面这个方法
intent.setDataAndType(Uri.parse("ita:"+11111), "aa/bb");
//[6]开启意图
startActivity(intent);
}
【1】注意事项,当setdata方法和settype方法清除效果,我们是使用intent.setDataAndType方法
★setType 方法 会自动清楚setdata方法
![](https://i-blog.csdnimg.cn/blog_migrate/21637d7e10baa2752cff10063e583fa7.png)
★setdata方法会自动清楚settype 方法
![](https://i-blog.csdnimg.cn/blog_migrate/86e493a4df63deaec030a99df2b9894d.png)
2,显示意图:通过指定具体的包名和类名来开启页面
//点击按钮实现页面的跳转
public void click3(View v) {
//[1]创建一个意图对象
Intent intent = new Intent(this,Test2Activity.class);
//[2]指定具体的包名和类名来开启 packageName:就代表当前应用的包名 className要开启页面的完整包名类名
// intent.setClassName("com.activityjump","com.activityjump.Test2Activity");
//[3]开启意图
startActivity(intent);
}