zoukankan      html  css  js  c++  java
  • Android显式和隐式Intent的区别和方式

    intent总共分显示intent和隐式intent

    一、显式ntent

    显式的意思是指可以直接指定需要打开的Activity对应的Java的类,参考csdn

    1.构造方法里直接传入Component,最常见
    Intent intent = new Intent(this, SecondActivity.class);
    startActivity(intent);
    
    2、setComponent方法
    ComponentName componentName = new ComponentName(this, SecondActivity.class);
    // 或者ComponentName componentName = new ComponentName(this, "com.example.app016.SecondActivity");
    // 或者ComponentName componentName = new ComponentName(this.getPackageName(), "com.example.app016.SecondActivity");
     
    Intent intent = new Intent();
    intent.setComponent(componentName);
    startActivity(intent);
    
    3.setClass/setClassName方法
    Intent intent = new Intent();
     
    intent.setClass(this, SecondActivity.class);
    // 或者intent.setClassName(this, "com.example.app016.SecondActivity");
    // 或者intent.setClassName(this.getPackageName(), "com.example.app016.SecondActivity");
    		
    startActivity(intent);
    

    总结

    显式Intent通过Component可以直接设置需要调用的Activity类,可以唯一确定一个Activity,意图明确,所以被称为显式。设置这个类的方式可以是
    Class对象,也可以是包名加类名的字符串。
    

    二、隐式

    隐式,即不是想显式的那样直接指定需要调用的Activity类,隐式不明确指定启动那个Activity,而是设置Action、Data、Category,让系统来筛选出合适的Activity。筛选是根据所有的来筛选。

  • 相关阅读:
    mysql数据库 及 常用 SQL语句
    移动前端—图片压缩上传实践
    使用Nodejs 的http-proxy 模块做代理服务器的尝试
    Ajax请求参数为文件类型
    <iframe>框架标签的使用
    vue2 核心概念
    关于Web前端密码加密是否有意义的总结
    原生js 与 jQuery对比
    word文档操作
    js (ECMAScript) 对数据处理的 方法、属性总结
  • 原文地址:https://www.cnblogs.com/wlxtuacm/p/11288134.html
Copyright © 2011-2022 走看看