• Android开发系列(十) Intent的使用


      本节不打算继续讲Android界面开发,而是讲一下Intent, 之后可能会把QQ登陆界面、聊天界面做出来,不过聊天界面可能会等我复习完Sqlite数据库之后再考虑,不过还是先记录一下本节的内容,以备以后参考。

      Intent 用于启动一个Activity 或 Service或者BroadCast。

    1、      可以使用setClass或者在构造函数中设置原Activity或者目标Activity,这样就可以显示的指定跳转的对象。

    2、      也可以通过setAction方法为Intent对象设置Action属性(一个字符串),然后启动intent, intent会根据在AndroidManifest.xml中的Activity的注册信息的intent-filter自动筛选符合条件的对象。

          这里要注意:

    新创建的一个Activity必须在AndroidManifest.xml中注册,注册时如果没有<intent-filter>  </intent-filter> 那么只需配置一下名字即可,但如果有intent-filter,就必须包含

    <action />和 <category  />属性,其中普通Activity的category属性一般可以是  <category android:name="android.intent.category.DEFAULT"/>

          /*****example*****/

    AndroidManifest.xml 

    <intent-filter>

          <action android:name="Action information"  />

          <category android:name="android.intent.category.DEFAULT" />

    </intent-filter>

    MainActivity.java

    Intent intent=new Intent();

    intent.setAction("Action Inforation");

    startActivity(intent);                                          //注意这里的Action Information的形式是任意的,但是必须不能与其他的Activity发生冲突

           /****************/

    3、可以通过addCategory设置category对启动的Activity做进一步的限定。

    AndroidManifest.xml 

    <intent-filter>

          <action android:name="Action information"  />

      

      <category android:name="TSIDJ" />

          <category android:name="android.intent.category.DEFAULT" />

    </intent-filter>

    MainActivity.java

    Intent intent=new Intent();

    intent.setAction("Action Inforation");

    intent.addCategory("TSIDJ");

    startActivity(intent);                                      

    //注意由addCategory()这一属性就能看出,这是添加了一个附加的属性,要注意两点:1、categeory属性DEFAULT不能省略; 2、category不能单独实现Activity的跳转,而Action独自就可以实现Activity跳转,category只是作为一个附加条件,即如果action/data信息相同而category信息不同也无法启动Activity

    今天就写这么多吧早点休息了。。

        

  • 相关阅读:
    性能测试理论知识
    接口测试笔试题
    测试计划与测试报告
    java基础面试题
    软件测试人员必备的linux命令
    tomcat各目录(文件)作用
    常见的面试题
    LoadRunner中怎么设置密码参数化与用户名关联
    数据库索引总结(二)
    数据库索引总结(一)
  • 原文地址:https://www.cnblogs.com/carlos-vic/p/Carlos_V_Android_10.html
Copyright © 2020-2023  润新知