1. 两个Activity之间可以通过Intent切换, 包括显示Intent 和 隐式Intent。

实例代码

MainActivity.java

public class MainActivity extends Activity {

	@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} /*
同一个应用程序里面 自己激活自己的东西. 推荐使用显示意图. 效率高.
不同的应用程序里面,激活别人的应用,或者是让自己的某一个界面希望被别人激活,推荐使用隐式意图,
1. 查询系统里面的所有的activity 看看是不是有满足条件的activity.
2.有,判断多少个,只有1个 直接启动, 如果有多个,列表方式
3.如果没有, 应用程序异常终止 activity not found execption
*/ // Intent 显示意图.
// 显示意图: 必须要指定开启组件的具体信息( 包名, 组件名, 组件的class)
//当用户点击按钮的时候 跳转到第二个界面
public void click(View view){
Intent intent = new Intent(this, OtherScreenActivity.class);
// intent.setClassName(this, "com.itheima.twoactivity.OtherScreenActivity");
startActivity(intent);
} public void click2(View view){
//cmp=com.android.gallery/com.android.camera.GalleryPicker
Intent intent = new Intent();
intent.setClassName("com.android.gallery", "com.android.camera.GalleryPicker");
startActivity(intent);
} //采用隐式意图 激活第三个界面
public void click3(View view){
Intent intent = new Intent();
intent.setAction("com.itheima.xxx");
//如果权限xml文件中没有加,则是默认值,必须设置为CATEGORY_DEFAULT
intent.addCategory(Intent.CATEGORY_DEFAULT);
//指定数据的类型, 如果一个APP既有Data又有Type 必须同时设置
//intent.setType("vnd.android.cursor.item/haha");
//intent.setData(Uri.parse("itheima:gagaga"));
intent.setDataAndType(Uri.parse("itheima:gagaga"), "vnd.android.cursor.item/haha");
intent.putExtra("name", "kevin");
   //putExtra 可以传对象,但是需要实现Serializable接口
startActivity(intent); //动作action 类型Type 数据data
//动作 数据
//打 人 打酱油
//泡 茶 泡 妞
//泡绿茶 泡红茶 泡乌龙茶
//addCategory 附加的信息. 提供一些执行的环境 参数
} public void click4(View view){
Intent intent = new Intent();
intent.setAction("android.intent.action.SENDTO");
intent.addCategory("android.intent.category.DEFAULT");
intent.setData(Uri.parse("sms:110"));
startActivity(intent);
} }

OtherScreenActivity.java

//activity 是系统的重要的组件 ,
//操作系统要想找打activity 就必须在 清单文件里面配置
public class OtherScreenActivity extends Activity {
//重写 activity 的oncreate方法 方法里面设置初始化程序的界面.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two); Intent intent = getIntent();//获取到激活他的意图
Uri uri = intent.getData();
String result = uri.toString();
String name = intent.getStringExtra("name");
System.out.println(result);
}
}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.itheima.twoactivity"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" /> <application
android:allowBackup="true"
android:icon="@drawable/app"
android:label="@string/application_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.itheima.twoactivity.MainActivity"
android:icon="@drawable/atools"
android:label="@string/activiy01" >
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity> <activity
android:name="com.itheima.twoactivity.OtherScreenActivity"
android:icon="@drawable/ic_scanner_malware"
android:label="@string/activity02" >
<intent-filter>
<action android:name="com.itheima.xxx" /> <data
android:mimeType="vnd.android.cursor.item/haha"
android:scheme="itheima" >
</data> <category android:name="android.intent.category.DEFAULT" >
</category>
</intent-filter>
</activity>
</application> </manifest>

Android -- 两个activity界面的切换, 显示Intent 和 隐式Intent,putExtra传递数据的更多相关文章

  1. Android开发学习笔记:浅谈显示Intent和隐式Intent

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://liangruijun.blog.51cto.com/3061169/655132 ...

  2. Android开发学习之浅谈显示Intent和隐式Intent

    Intent寻找目标组件的两种方式: 显式Intent:通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的. 隐式Intent:通过Intent ...

  3. 在Android中Intent的概念及应用(一)——显示Intent和隐式Intent

    Intent寻找目标组件的两种方式: 显式Intent:通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的. 隐式Intent:通过Intent ...

  4. 【Android】6.0 添加Menu菜单组件、Intent启动活动、显式Intent、隐式Intent

    1.0 在helloworld项目基础上创建活动SecondActivity: 2.0 其中main.xml: <?xml version="1.0" encoding=&q ...

  5. 2018.7.9 Android—显式Intent和隐式Intent的区别

    1:都是用来在一个activity中启动另外一个activity 2:显示Intent直接指明要启动activity的定义,即activity.class:隐式intent通过在androidmani ...

  6. selenium 显示等待、隐式等待、强制等待

    如今大部分web程序使用Ajax技术,当浏览器加载页面时,页面元素可能不是同时加载完成,如果因为加载某个元素超时导致ElementNotVisibleException的情况出现,自动化脚本的稳定性就 ...

  7. 显示intent和隐示intent有什么区别

    显式Intent定义:对于明确指出了目标组件名称的Intent,我们称之为显式Intent. 隐式Intent定义:对于没有明确指出目标组件名称的Intent,则称之为隐式Intent. 说明:And ...

  8. Android学习记录(7)—Intent中显示意图和隐式意图的用法

    Intent(意图)主要是解决Android应用的各项组件之间的通讯. Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的 ...

  9. Android 显示意图和隐式意图的区别

    意图在android的应用开发中是很重要的,明白了意图的作用和使用后,对开发会有很大帮助.如果没有把意图搞懂,以后开发应用会感觉缺些什么.        意图的作用:        1.激活组件   ...

随机推荐

  1. CF#301 D:Bad Luck Island (概率dp)

    D:Bad Luck Island 一个岛上有r个石头,s个剪子,p个布,他们之间随机挑出两个相遇,如果不是相同物种,就会有一个消失,分别求出最后这座岛上只剩下一个物种的概率. 我们用dp[i][j] ...

  2. Windows使用中的一些小技巧

    1.网站保存在桌面 在桌面新建一个快捷方式,然后输入网址即可.

  3. UVA+POJ中大数实现的题目,持续更新(JAVA实现)

    UVA10494:If We Were a Child Again 大数除法加取余 import java.util.Arrays; import java.util.Scanner; import ...

  4. STL make_heap push_heap pop_heap sort_heap

    make_heap: default (1) template <class RandomAccessIterator> void make_heap (RandomAccessItera ...

  5. 工作笔记-javascript-网络层封装

    /** * @Author Mona * @Date 2016-12-08 * @description 网络层封装 */ /** * 封装基本请求方式 */ window.BaseRequest = ...

  6. Divide by Zero 2017 and Codeforces Round #399 (Div. 1 + Div. 2, combined) C - Jon Snow and his Favourite Number

    地址:http://codeforces.com/contest/768/problem/C 题目: C. Jon Snow and his Favourite Number time limit p ...

  7. SCP命令只能单项拷贝,另一个方向“RSA host key for 172.16.103.176 has changed and you have requested strict checki Host key verification failed. lost connection”问题

    [dinghuaneng@95 move_data]$ scp * dinghuaneng@172.16.103.176:/home/dinghuaneng@@@@@@@@@@@@@@@@@@@@@@ ...

  8. mycat实战之性能测试

    1.安装性能监控工具 1.1 nmon 安装nmon de >#下载地址 http://nmon.sourceforge.net/pmwiki.php?n=Site.Download nmon1 ...

  9. zookeeper和淘宝dubbo的关系

    Dubbo建议使用Zookeeper作为服务的注册中心. 1.   Zookeeper的作用:         zookeeper用来注册服务和进行负载均衡,哪一个服务由哪一个机器来提供必需让调用者知 ...

  10. Android Camera API ISO Setting

    https://stackoverflow.com/questions/2978095/android-camera-api-iso-setting exif this.mCameraParamete ...