Anroid之意图的使用

inten常见动作:MAIN_ACTION(主视图)、 VIEW_ACTION(查看)、 EDIT_ACTION(修改)、 PICK_ACTION 、GET_CONTENT_ACTION(获取内容)、  DIAL_ACTION 、CALL_ACTION 、SENDTO_ACTION、 ANSWER_ACTION、 INSERT_ACTION、 DELETE_ACTION 、RUN_ACTION 、LOGIN_ACTION 、CLEAR_CREDENTIALS_ACTION、 SYNC_ACTION、 PICK_ACTIVITY_ACTION、 WEB_SEARCH_ACTION等,此外也可以自己定义动作

执行动作操作数据:

1.action和data

2.category(类别),被执行动作的附加信息。例如 LAUNCHER_CATEGORY 表示Intent 的接受者应该在Launcher中作为顶级应用出现;而ALTERNATIVE_CATEGORY表示当前的Intent是一系列的可选动作中的一个,这些动作可以在同一块数据上执行。

3.type(数据类型),显式指定Intent的数据类型(MIME)。一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显式指定的类型而不再进行推导。

4.component(组件),指定Intent的的目标组件的类名称。通常 Android会根据Intent 中包含的其它属性的信息,比如action、data/type、category进行查找,最终找到一个与之匹配的目标组件。但是,如果 component这个属性有指定的话,将直接使用它指定的组件,而不再执行上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。

5.extras(附加信息),是其它所有附加信息的集合。使用extras可以为组件提供扩展信息,比如,如果要执行“发送电子邮件”这个动作,可以将电子邮件的标题、正文等保存在extras里,传给电子邮件发送组件。

Demo:

package com.example.homekey;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button btnhome=(Button)findViewById(R.id.btnhome);
btnhome.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//意图
Intent intent=new Intent();
//设置意图动作
intent.setAction(intent.ACTION_MAIN);
//设置类别
intent.addCategory(intent.CATEGORY_HOME);
//执行意图
startActivity(intent);
}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

执行效果图:

时间: 2024-08-10 00:05:04

Anroid之意图的使用的相关文章

购物意图分析

最近在读<淘宝技术这十年>一书,发觉里面常有一些很有意思的分享与概念,例如下面的这个,购物意图分析: 通常我们在逛淘宝时会使用到搜索功能,但你可能不知道你输入不同的搜索词,便体现了你的不同购物意图,搜索引擎便会根据你的意图来呈现不同的内容,让推荐更加精准,直达你内心的需求,主要有如下几种意图: 1.浏览型:没有明确想买的东西,边看边买,这样的用户例如会输入"2017年十大香水排行","今年最流行的毛衣","zippo有多少种类".使用

Android通过意图使用内置的音频播放器

如果实现一个音频文件的播放,那么在应用程序中提供播放音频文件功能的最简单的方式是利用内置的"Music(音乐)"应用程序的功能--即使用系统自带的或已安装好的音乐播放器来播放指定的音频文件. 本例比较简单,下面直接给出源代码: 布局文件activity_main: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http:/

自定义隐式意图

1.清单文件 1 <activity 2 android:name="com.example.twoactivity.OtherScreenActivity" 3 android:label="@string/app_name" > 4 <intent-filter> 5 <action android:name="com.itheima.com" /> //设置action名称 6 <category

android隐式意图激活自定义界面

我们也可以使用隐士意图激活自定义的界面,并且可以携带数据: 效果: 点击第二个按钮后: 附代码: 主窗体的代码: 1 package com.yy.twoactivity; 2 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.net.Uri; 6 import android.os.Bundle; 7 import android.view.View; 8 9 public clas

Android Intent 意图作用

Intent分为两大类: (1)显性的(Explicit) (2)隐性的(Implicit) 对于隐性意图,在某些时候, 应用程序只是想启动具有某种特征的组件, 并不想和某个特定的组件耦合. 使用Intent可以方便的达到这种高层次解耦的目的.(在模块间的组件启动) intent定位事件的目的地: (1)种类(category),比如我们常见的 LAUNCHER_CATEGORY 就是表示这是一类应用程序. (2)类型(type),在前面的例子中没用过,表示数据的类型,这是隐性Intent定位目

无废话Android之smartimageview使用、android多线程下载、显式意图激活另外一个activity,检查网络是否可用定位到网络的位置、隐式意图激活另外一个activity、隐式意图的配置,自定义隐式意图、在不同activity之间数据传递(5)

1.smartimageview使用 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"

Android_Intent意图详解

        Intent是一个将要执行的动作的抽象的描述,由Intent来协助完成android各个组件之间的通讯.比如调用Activity实例化对象的startActivity()来启动一个activity,或者由broadcaseIntent()来传递给所有感兴趣的BroadcaseReceiver, 或者由startService()/bindservice()来启动一个后台的service.可见,intent主要用来启动activity或者service(并携带需要传递的参数信息),

隐式意图 Intent

/显式意图 :必须指定要激活的组件的完整包名和类名 (应用程序之间耦合在一起) // 一般激活自己应用的组件的时候 采用显示意图 //隐式意图: 只需要指定要动作和数据就可以 ( 好处应用程序之间没有耦合) //激活别人写的应用 隐式意图, 不需要关心对方的包名和类名 1.Manifest <activity android:name="com.itheima.intent2.SecondActivity" > <intent-filter> <actio

[android] 隐式意图激活另外一个activity

随着api的升级,系统的很多应用包名和类名都改掉了,所以很多时候,打开系统应用的时候会报错,隐式意图就是解决组件之间松耦合,描述动作行为 获取Intent对象,通过new出来 调用Intent对象的setAction(action)方法,设置动作,参数:String类型的常量例如:Intent.ACTION_VIEW 调用Intent对象的setData(data)方法,设置数据,参数:Uri对象, 例如:网址Uri.parse(“http:xxx”); 调用startActivity(inte