首页 > 其他 > 详细

Intent 跳转 Activity 用法

时间:2019-11-11 16:06:39      阅读:78      评论:0      收藏:0      [点我收藏+]
 1 一、不同应用中的 Activity 传递
 2         Intent tIntent=new Intent();
 3         ComponentName tComponentName=new ComponentName("com.oradt.ecard.globalsearch", "com.oradt.ecard.globalsearch.GlobalActivity");
 4         tIntent.setComponent(tComponentName);
 5         tIntent.setAction("android.intent.action.MAIN");
 6         tIntent.putExtra("id", mTimeRing.getId());
 7         mContext.startActivity(tIntent);
 8  1.注解:
 9 
10 1.com.oradt.ecard.globalsearch 是要跳转应用的包名,即 AndroidManifest.xml 中的 package
11 
12     <manifest xmlns:android="http://schemas.android.com/apk/res/android"
13             package="com.oradt.ecard.globalsearch"
14 
15 2.com.oradt.ecard.globalsearch.GlobalActivity 是要跳转的 Activity 名+全包名
16         <activity
17             android:name=".GlobalActivity"
18             android:label="@string/app_name" >
19             <intent-filter>
20                 <action android:name="android.intent.action.MAIN" />
21 
22                 <category android:name="android.intent.category.LAUNCHER" />
23             </intent-filter>
24           </activity>
25 就是 android:name 中注册的名字
26 
27  2.在第 2 个 Activity 中接收数据与平时的一样
28         Intent tIntent = getIntent();
29         int id = tIntent.getIntExtra("id", -1);
30 
31         if (id > -1) {
32 
33             TextView tId = (TextView) this.findViewById(R.id.tvId);
34             tId.setText(""+id);
35         }
36 
37  3.如果第 2 个 Activity 不是主 Activity,需要设置<intent-filter>
38         <activity android:name="com.oradt.ecard.globalsearch.ContnActivity" >
39             <intent-filter>
40                 <action android:name="com.oradt.action.PLAYER" />
41 
42                 <category android:name="android.intent.category.DEFAULT" />
43             </intent-filter>
44         </activity>
45 
46 其中 android.intent.category.DEFAULT 不是必须的(亲自实验),但 com.oradt.action.PLAYER 是必须的。并且他与 tIntent.setAction("android.intent.action.MAIN");中的内容是对应的。
47         Intent tIntent = new Intent();
48         ComponentName tComponentName=new ComponentName("com.oradt.ecard.globalsearch", "com.oradt.ecard.globalsearch.ContnActivity");
49         tIntent.setComponent(tComponentName);
50         tIntent.setAction("com.oradt.action.PLAYER");
51         mContext.startActivity(tIntent);
52 
53 经实验,tIntent.setAction("com.oradt.action.PLAYER"); 可不加,但<action android:name="com.oradt.action.PLAYER" /> 必须要有。

 

Intent 跳转 Activity 用法

原文:https://www.cnblogs.com/zx-blog/p/11835869.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!