zoukankan      html  css  js  c++  java
  • 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" /> 必须要有。
  • 相关阅读:
    Data Structure(2)
    CoreAnimation —— CALayer
    [置顶] android AIDL 进程间通信
    UVA 10057 A mid-summer night's dream. 仲夏夜之梦 求中位数
    基于mini2440的IIC读写(裸机)
    外媒关注:中国法庭用新浪微薄直播薄熙来审判
    [置顶] 吃论扯谈---吃货和Office 365订阅的关系
    小智慧42
    机器学习如何选择模型 & 机器学习与数据挖掘区别 & 深度学习科普
    【Todo】【转载】Spark学习 & 机器学习(实战部分)-监督学习、分类与回归
  • 原文地址:https://www.cnblogs.com/zx-blog/p/11835869.html
Copyright © 2011-2022 走看看