zoukankan      html  css  js  c++  java
  • Android学习笔记--Intent

    Intent是android四大组件之间交互的一种重要方式。Intent可以指明当前要执行的动作,也可以指明要传递的数据。Intent可以用来启动活动,启动服务,发送广播。
    Intent分为两种:1.显式Intent 2.隐式Intent
    显示Intent使用方法:
    例(启动活动)
    Intent有多个重载的构造方法。其中一个是Intent(Context packageContext, Class<?> cls) 第一个参数是上下文Context对象, 因为Activity, Service, Broadcast均为Context的子类,所以可以直接传入。 后一个参数是要启动的活动。通过这个构造函数就可以构建出“意图”。然后将这个Intent对象传给startActivity()方法就可以启动另外的活动了。
    隐式Intent使用方法:
    例(启动活动)
    隐式Intent不直接指明要启动的活动。而是通过描述要启动的组件的特征,借助系统分析这个Intent, 对系统内的所有组件的特征进行筛选过滤出合适的组件。所有的组件,如果想被隐式的Intent启动,都要通过在标签下配置的内容,可以指定当前活动能够响应的 action 和 category。只有中的内容同时能够匹 配上 Intent 中指定的 action 和 category 时,这个活动才能响应该 Intent。

    Intent向下一个活动传递数据
    启动活动时传递数据使用的是一系列putExtra(键,值)方法的重载。他可以把数据暂存在Intent中,在启动了下一个活动之后,再把数据从intent中取出来。在下一个活动中使用getIntent()获取到启动它的那个intent对象,然后调用getStringIntent(键)方法,获取到传来的数据getXXIntent, XX为传来数据的类型。

    Intent返回数据给上一个活动
    使用startActivityForResult(Intent, 请求码)启动下一个活动,来向启动方返回数据,请求码为了让上一个活动能够识别出这是哪一个活动返回给他的。这个方法期望在活动销毁的时候能够返回一个结果给上一个活动。
    setResult(RESULT_OK, intent)专门用来向上一个活动返回数据的方法,第一个参数是返回码。由于我们是使用 startActivityForResult()方法来启动 SecondActivity 的,在 SecondActivity 被销毁之后会回调上一个活动的 onActivityResult()方法,因此我们需要在 FirstActivity 中重 写这个方法来得到返回的数据。

  • 相关阅读:
    如何在控件的设计时得到窗体设计器中的所有控件
    如何将一个数组绑定到DataList
    在找C#语言规范吗?只要你装了VS,你就能找到
    lync相关功能介绍
    下表描述了Foundation 2010 、 SharePoint Server 2010 和 FAST Search Server 2010三者的搜索能力
    sharepoint 2010 针对移动端的支持
    SharePoint Foundation 2010 SP1 改进概述
    RMS FOR EXCHANGE 2010
    Excel Web App使用说明
    win2008 server rms部署
  • 原文地址:https://www.cnblogs.com/zharma/p/5418869.html
Copyright © 2011-2022 走看看