• Intent 跳转 Activity 用法


     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" /> 必须要有。
  • 相关阅读:
    python---1
    20190802—list、range、extend函数
    20190802—def定义函数
    20190802—import函数调用
    如何在EXCEL中将多个单元格内容合并到一个单元格中
    20190619—return函数的用法
    20190618—位置参数、默认参数、不定长参数
    excel 怎么计算单元格个数
    20190616——and和or使用方法、python运算符总结、python数据类型
    20190616——enumerate的用法
  • 原文地址:https://www.cnblogs.com/zx-blog/p/11835869.html
Copyright © 2020-2023  润新知