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。筛选是根据所有的来筛选。

  • 相关阅读:
    学习视频收集
    vscode 编译器插件
    vue2.0父子组件之间传值
    js 案例
    插件
    【转】30分钟掌握 C#6
    【初码干货】关于.NET玩爬虫这些事
    上机作业七 系统进程与计划任务管理
    客户端与服务器双向密钥对验证
    DHCP中继配置
  • 原文地址:https://www.cnblogs.com/wlxtuacm/p/11288134.html
Copyright © 2011-2022 走看看