android--显式跳转和隐式跳转

区别如下:

  1. 显式启动Activity指的是在Intent内部直接声明要启动的activity所对应的class。
  2. 隐式启动Activity的intent到底发给哪个activity,需要进行三个匹配,一个是action, 一个是category,一个是data,可以是全部或部分匹配,同样适用于Service和BroadcastReceiver。

A:显式启动

下面用代码来解释什么是显式启动。

[java] view
plain
 copy

print?

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

B:隐式启动

隐式启动不同之处在于并不需要像Intent(MainActivity.this, SecondActivity.class)这样传参数然后再Start另一个Activity.需要在intent添加过滤器intentfilter。

[html] view
plain
 copy

print?

  1. <span style="color:#454545;"><activity
  2. android:name="com.example.android.tst.SecondActivity"
  3. android:label="@string/title_activity_main" >
  4. <intent-filter>
  5. </span><span style="color:#ff0000;"><action android:name="com.example.android.tst.SecondActivity"/>
  6. <category android:name="android.intent.category.DEFAULT" /></span><span style="color:#454545;">
  7. </intent-filter>
  8. </activity></span>

这样,需要在启动另一个Activity的时候只需要如下方法就可以:

[java] view
plain
 copy

print?

  1. Intent intent=new Intent("com.example.android.tst.SecondActivity");
  2. startActivity(intent);

C:跳转到另一个Activity后,当返回时能返回数据

在跳转的Activity端,调用startActivityForResult(intent2, 1),跳转到下一个Activity,其中第一个参数为传入的意图对象,第二个为设置的请求码;

跳转到第二个Activity后,调用setResult(100, intent)方法可返回上一个Activity,其中第一个参数为结果码,第二个为传入的意图对象;

在第一个Activity通过onActivityResult()方法获得返回的数据。

时间: 2024-08-07 00:15:29

android--显式跳转和隐式跳转的相关文章

(Android review)显示意图激活与隐式意图激活

一.基本知识点 1.<activity android:label="第一个activity" android:name=".Main2Activity"/> label属性:某个Acivity的标题 2.R文件不要引错了,引成Android底层的了 3.intent.setClass(this, Main2Activity.class);第一个参数:上下文第二个参数:要激活的组件的字节码文件 4.显示意图激活(明确指定了要激活的组件)1)intent.

Android Activity的跳转:普通跳转(显式跳转,隐式跳转)和传值跳转

Android Activity的跳转 1.普通跳转 @显式跳转 startActivity(new Instent(Activity.this,Activity2.class)); 注意:a--->b--->a(a跳转到b,按下back,回到a) 从一个Activity1跳转到另个Activity2,再由这个Activity2返回前面的Activity1,Activity的所执行的方法为:onCreate(a)---onStart(a)---onResume(a)---onPause(a)-

[转]Activity详解 Intent显式跳转和隐式跳转

Activity 生命周期 显式 Intent 调用 1     //创建一个显式的 Intent 对象(方法一:在构造函数中指定) 2      Intent intent = new Intent(Intent_Demo1.this, Intent_Demo1_Result1.class); 3 4      Bundle bundle = new Bundle(); 5      bundle.putString("id", strID); 6      intent.putEx

Activity的显式跳转和隐式挑战

安卓中Activity的跳转几乎是每一个APP都会用到的技术点.而且他的使用时十分简单的. 这里我们先说一下主要的技术要点: 1.在清单文件中注册新的Activity 2.通过意图跳转 这里我们看一下部分清单文件 注意,有配置红框的一般就是我们的主Activity,也就是程序的主入口.如果同时配置了两个主入口,则会生成两个快捷图标.一般我们不会这样使用. 好了,下面直接看代码吧. 清单文件 <?xml version="1.0" encoding="utf-8"

android--显式跳转和隐式跳转的差别使用方法

#创建第二个activity * 新创建的activity.必须在清单文件里做配置,否则系统找不到,在显示时会直接报错 <activity android:name="com.itheima.createactivity.SecondActivity"></activity> * 仅仅要有下面代码,那么就是入口activity.就会生成快捷图标 <intent-filter> <action android:name="android

android--显式跳转和隐式跳转的区别用法

#创建第二个activity * 新创建的activity,必须在清单文件中做配置,否则系统找不到,在显示时会直接报错 <activity android:name="com.itheima.createactivity.SecondActivity"></activity> * 只要有以下代码,那么就是入口activity,就会生成快捷图标 <intent-filter> <action android:name="android.

显式启动Activity和隐式启动Activity

1.显式启动Intent intent = new Intent(this, class);startActivity(intent); 2.隐式启动AndroidManifest.xml中定义某个Activity的intent-fliter<intent-filter><action android:name="com.example.activity.ACTION_START" /><category android:name="androi

Android中的显示Intent和隐式Intent

1.显示Intent 在onclick方法中 Intent intent=new Intent(FirstActivity.this,SecondActivity.class); startActivity(intent); 2.隐式Intent 隐式Intent不明确指出我们要启动哪一个活动,而是指定一系列更为抽象的action和category等信息,然后交由系统去分析这个intent,并帮我们找到合适的Intent去启动 通过标签下配置的内容,指定当前活动能够响应的action和categ

(转载)Android理解:显式和隐式Intent

Intent分两种:显式(Explicit intent)和隐式(Implicit intent). 一.显式(设置Component) 显式,即直接指定需要打开的activity对应的类. 以下多种方式都是一样的,实际上都是设置Component直接指定Activity类的显式Intent,由MainActivity跳转到SecondActivity: 1.构造方法传入Component,最常用的方式 Intent intent = new Intent(this, SecondActivit