关于activity的一些基础知识



清单文件
xmlns:xml的命名空间
    package:包名
    versionCode:版本号
    versionName:版本名称
    uses-sdk:兼容版本
        minSdkVersion:最低版本
    application:全局应用
        icon:图标
        label:标题
        theme:全局的主题
        activity:
            name:完全类名
            label:界面名
            intent-filter:可以配置应用程序的入口(在清单文件里面的activity属性中配置intent-filter,可以在手机桌面新增一个图标入口)


在清单文件中除了根节点 都能删掉
android中没有明文规定只能有一个程序的入口,但是一般情况下,最好只有一个应用程序的启动图标    默认情况下 启动图片是应用程序 图片和标题 但是每个activity都可以设置自己的icon和label,如果卸载重装 应用程序会变成activity的文字和图标

隐式意图和显式意图都能达到跳转的效果

隐式意图:通过一组 动作和数据 打开动作数据相匹配的一个activity
隐式意图的写法需要在清单文件中配置intent-filter里的action和category,category需要设置为android.intent.category.DEFAULT(默认的)
跳转代码
Intent intent = new Intent();
intent.setAction(action设置的值);
//如果将category设置为default,这里这句add语句可以不写
intent.addCategory(Intent.CATEGORY_DEFAULT);
startActivity(intent);

在intent-filter中可以设置data
常用的设置有两种:scheme(约束),设置后需要设置setData();setData会自动清除在他之前的设置的数据
和mimeType(告诉格式),设置后需要设置setType();setType会自动清除在他之前的设置的数据
如果要设置两者 可以使用setDataAndType(data,type)

显式意图:主要自己打开自己的应用的时候使用
隐式意图:需要暴露给别人 让别人打开你的应用的时候使用


****一个activity可以配置多个intent-filter 只需要匹配上一个intent-filter就可以打开这个界面
多个activity可以配置相同的intent-filter 如果匹配上多个activity 系统会把所有匹配上的activity作为一个列表让用户进行选择

关于意图传递值
并不是所有的类型都可以传递,只能传序列化对象(android自带parcelable Java自带的Serializable) bundle(类似map) 八种基本类型和字符串以及对应的数组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值