Android学习笔记-Intent-意图


显式意图

方法:

  1. 创建一个显式意图
  2. 使用 context 启动意图

特点:

  • 创建意图的时候就指明要跳转到的Activity
  • 只能跳转到当前应用中的Activity

总结:

用于应用之中,不同Activity的交互。

隐式意图

方法:

  1. 使用空参构造器创建一个意图
  2. 设置动作和指定的信息
  3. 使用Content启动意图

特点:

  • 不需要指明要跳转到Activity
  • 同一个系统下的Activity都可以跳转
  • 如果存在多个符合所设置要求的Activity,会弹出窗口让用户进行选择

总结:

用于系统之中,不同应用之间的Activity的交互。

意图的常用操作

LogCat参看当前启动的意图

参数说明
actAction
catCategory

数据传递



可以通过 setData 和 putExtra 来传递数据。
putExtra支持八大基本数据类型,如果要传递对象的话,这个对象需要实现 Serializable 接口。

开启新的界面获取新的界面的返回值

  1. 告诉系统,打开新界面并且需要获取返回值<
Intent intent = new Intent(this, AActivity.class);
startActivityForResult(intent, 0);
  1. 新界面宣告完成,并返回数据
Intent data = new Intent();
data.putExtra("icon", resId);
setResult(0, data);
finish();
  1. 实现onActivityResult() 获取返回值
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(data != null){
        int resId = data.getIntExtra("icon", 0);
        mHeadImg.setImageResource(resId);
    }
    super.onActivityResult(requestCode, resultCode, data);
}

声明:墨墨的经验分享|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Android学习笔记-Intent-意图


他们的规则是他们的规则,我们只按自己的规则行动