Activity的几种启动方式

2016-12-10  本文已影响13人  学不好语文的LJ码农

以下内容整理自互联网,仅用于个人学习


1. Intent可传递如下几种类型数据

2. 使用Intent启动Activity的几种方式

2.1 直接通过class对象

Intent intent = new Intent(this, SecondActivity.class); 
startActivity(intent);

2.2 通过包名+类名

Intent intent = new Intent(); 
//第一个参数是包名称,第二个参数是要启动的类的全限定名称 
intent.setClassName("com.ljr.example.test", "com.ljr.example.test.SecondActivity"); 
startActivity(intent);

2.3 通过包Context+类名

Intent intent = new Intent(); 
//第一个参数是包Context,可以直接传入Activity即可,第二个参数是要启动的类的全限定名称 
intent.setClassName(this, "com.ljr.example.test.SecondActivity"); 
startActivity(intent);

2.4 通过ComponentName

Intent intent = new Intent(); 
//第一个参数是包名称,第二个参数是要启动的类的全限定名称 
ComponentName cn = new ComponentName("com.ljr.example.test", "com.ljr.example.test.SecondActivity"); 
intent.setComponent(cn); 
startActivity(intent);

2.5 通过隐式方式

Intent intent = new Intent(); 
intent.addCategory(Intent.CATEGORY_DEFAULT); 
intent.addCategory("com.ljr.example.second"); 
intent.setAction("com.ljr.example.action"); 
startActivity(intent);
上一篇下一篇

猜你喜欢

热点阅读