
Android基础
-风になる-
这个作者很懒,什么都没留下…
展开
-
Android rxjava
RxJava是ReactiveX在JVM上的一个实现,ReactiveX使用Observable序列组合异步和基于事件的程序的库;是一个基于事件流、实现异步操作的库。RxJava在Java环境下使用,它通过Observable(可观测对象)和Subscriber(订阅者)来实现异步编程模型。利用各种操作符,我们可以对数据流进行变换、过滤、合并等操作,从而完成复杂的异步任务。Observable被观察者理解为起点,Observer观察者理解为终点,通过Subscribe连接两者。原创 2024-04-15 21:11:47 · 432 阅读 · 0 评论 -
Gson
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象(反序列化),或者反过来(序列化)。在bulid.gradle中添加依赖。原创 2024-04-11 20:47:04 · 424 阅读 · 0 评论 -
Android retrofit
封装了OkHttp,也是由Square公司贡献的一个处理网络请求的开源项目。在bulid.gradle中添加依赖。原创 2024-04-10 14:22:25 · 1035 阅读 · 1 评论 -
Android OkHttp
OkHttp按照Http协议规则实现了缓存的处理,缓存是比如:当我们发起第一次请求之后,如果后续还需要进行同样的请求,此时如果符合缓存规则,则可以减少与服务器的网络通信,直接从本地文件缓存中读取响应返回给请求者。Cookie是某些网站为了辨别用户身份,进行会话跟踪(比如确定登陆状态)而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。协议规定 POST 提交的数据必须放在请求体中,但协议并没有规定数据必须使用什么编码方式。数据被编码为一条消息,一般用于文件上传;原创 2024-04-07 20:51:06 · 716 阅读 · 0 评论 -
Android Glide
或做了某些类型的修改后,你可能需要重新构建 (rebuild) 你的项目。当待加载的图片包含透明像素时,禁用交叉淡入会导致动画完成后占位符在图片后面仍然可见。3. fallback 如果请求的url/model为 null 的时候展示的图片 (如果没有设置,还是展示placeholder的占位符)2. error 如果请求失败的时候展示的图片 (如果没有设置,还是展示placeholder的占位符)Transitions定义 Glide 如何从占位符到新加载的图片,或从缩略图到全尺寸图像过渡。原创 2024-04-04 15:45:28 · 2427 阅读 · 1 评论 -
Android 高德地图
点击Android地图SDK,下拉找到相关下载,下载aar包,下载完成后解压,将解压后的包拷贝至项目libs,在 dependencies中添加 implementation files("libs/下载的aar包")在创建的应用上点击"添加key"按钮,在弹出的对话框中,依次输入key名称,选择服务平台为“Android平台”,输入发布版安全码 SHA1、以及 Package。如果定义了ANDROID_SDK_HOME,则将文件放置在SDK的子文件夹.android中。(从第三步开始参考)原创 2024-04-03 20:39:59 · 1546 阅读 · 1 评论 -
Android MediaPlayer
在调用start()方法之前,程序会调用prepare()方法或prepareAsync()方法解析,prepare()为同步操作,一般用于解析较小的文件,prepareAsync()为异步操作,一般用于解析较大的文件。调用stop()方法停止播放,之后调用release()方法将MediaPlayer对象占用资源释放。如果使用 MediaPlayer 流式传输基于网络的内容,则必须请求网络访问权限。内部 URI,例如您可能从内容解析器那获取的 URI。prepare()方法,直接调用start()方法。原创 2024-03-30 17:02:32 · 544 阅读 · 0 评论 -
Android MediaRecorder
创建MediaRecordActivity,使用Intent连接MainActivity和MediaRecordActivity。MediaRecordActivity中设置MediaRecorder。AndroidManifest.xml中添加权限标记。MediaRecorder详细请参考。动态添加权限MainActivity。MediaRecorder状态图。原创 2024-03-30 12:39:16 · 550 阅读 · 1 评论 -
Android数据传递
【代码】Android数据传递。原创 2024-03-28 20:24:30 · 436 阅读 · 0 评论 -
Android数据存储:SQLite、Room
在Android平台上,集成了一个嵌入式关系型数据库—SQLite,SQLite3支持 NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n)、char(n)、decimal(p,s)等数据类型,只不过在运算或保存时会转成对应的五种数据类型。对于与数据库关联的每个 DAO 类,数据库类必须定义一个具有零参数的抽象方法,并返回 DAO 类的实例。,这样就不会保留架构版本记录的备份。原创 2024-03-27 17:04:40 · 1027 阅读 · 1 评论 -
Android数据存储:SharedPreferences
1.SharedPreferences是使用键值对的方式来存储数据的,保存为.xml文件。2.不能存储大量信息,主要用来保存一些轻量级的数据(字符串、基本数据类型),比如应用程序的各种配置信息,以及一些简单的账号、密码等。不支持多进程读写。3.commit 方法是同步进行的,apply 是异步进行的,两者都是以替换上次数据来进行数据更新的,如果同时有两个地方调用 commit 或者 apply ,以最后一次调用为最终数据更新。原创 2024-03-26 19:58:31 · 467 阅读 · 0 评论 -
Fragment 与 ViewPager的联合应用(2)
6.在MainActivity中创建initTabView()函数 实现View.OnClickListener函数并监听。8.实现viewpager和底部的响应 在initViewPager()中添加。7.将bottom_layout添加至activity_main中。基本完成viewpager和frgement简单的联合应用。5.创建底部布局bottom_layout。原创 2024-03-22 20:12:04 · 310 阅读 · 0 评论 -
Fragment 与 ViewPager的联合应用(1)
2.创建一个BlankFragment,fragment_blank.xml的TextView 设置一个ID属性 android:id="@+id/tv"4.在MainActivity中创建一个函数初始化viewpager。1.在activity_main中创建ViewPager布局。3.创建MyFragmentPagerAdapter类。最终效果:简单模拟微信界面。初步完成界面的左右滑动。原创 2024-03-22 19:56:18 · 256 阅读 · 0 评论 -
动态加载Fragment
3.开启一个事务 FragmentTransaction,一般调用fragmentManager的beginTransaction()2.获取FragmentManager的实例,一般都是通过getSupportFragmentManager()4. 使用transaction进行 fragment的替换。1.创建一个待处理的fragment对象。原创 2024-03-19 12:22:15 · 441 阅读 · 0 评论 -
Android布局
为该组件设置一个背景图片,或者是直接用颜色覆盖。控制组件所包含的子元素的对齐方式,可多个组合。控制该组件在父容器里的对其方式。设置允许被拉伸的列的列序号,从。设置允许被收缩的列的列序号,从。该属性是用来等比例的划分区域。设置需要被隐藏的列的序号,从。设置组件与父容器的边距。布局中组件的排列方式。设置分割线所在的位置,放置于参考组件的左边。放置于参考组件的右边。放置于参考组件的上方。放置于参考组件的下方。对齐参考组件的上边界。对齐参考组件的下边界。对齐参考组件的左边界。设置组件内部元素的边距。原创 2024-03-16 11:02:31 · 373 阅读 · 1 评论 -
PopupWindow
相对某个控件的位置(正左下方),无偏移。:相对某个控件的位置,有偏移。原创 2024-03-15 17:02:16 · 365 阅读 · 1 评论 -
AlertDialog
构建Dialog的各种参数添加ICON添加标题添加消息设置自定义布局创建Dialog显示对话框确定按钮取消按钮中间按钮。原创 2024-03-15 16:48:12 · 388 阅读 · 1 评论 -
Toolbar
app:titleTextColor= "#ff0000" 标题颜色。默认的Toolbar在res/values/themes.xml中。app:titleMarginStart= "90dp" 标题间距。改为NoActionBar可以取消默认的Toolbar。原创 2024-03-15 16:05:35 · 350 阅读 · 1 评论 -
Notification
系统级服务的句柄,返回对应的对象。类是一个通知管理器类,这个对象是由系统维护的服务,是以单例模式的方式获得,所以。对象,可以保证程序在所有的版本上都能正常工作。Android8.0。开启通知,不会弹出,但没有提示音,状态栏中无显示。新增了通知渠道这个概念,如果没有设置,则通知无法在。开启通知,不会弹出,不发出提示音,状态栏中显示。开启通知,不会弹出,发出提示音,状态栏中显示。系统开始,对于通知栏图标的设计进行了修改。开启通知,会弹出,发出提示音,状态栏中显示。要求,所有应用程序的通知栏图标,应该只使用。原创 2024-03-15 15:47:10 · 418 阅读 · 1 评论 -
ProgressBar
则进度条不精确显示进度。:进度条已完成进度值。原创 2024-03-15 11:55:32 · 432 阅读 · 1 评论 -
ImageView
对图像的横纵方向进行独立缩放,使得该图片完全适应。保持宽高比缩放图片,直到较长的边与。,但是图片的宽高比可能会发生改变。保持宽高比缩放图片,直到完全覆盖。的左上角开始绘制原图, 原图超过。默认值,同上,缩放后放于中间。,可能会出现图片的显示不完全。同上,缩放后放于右下角。保持宽高比缩放图片,直到。保持原图的大小,显示在。,超过部分裁剪处理。缩放完成后将图片放在。不改变原图的大小,从。原创 2024-03-15 11:47:56 · 403 阅读 · 1 评论 -
EditText
在输入框的指定方位添加图片。设置图片与输入内容的间距。设置内容与边框的间距。原创 2024-03-15 11:40:31 · 399 阅读 · 1 评论 -
Button
资源的一种,可以根据不同的状态,设置不同的图片效果,关。通过setOnLongClickListener方法设置。通过setOnClickListener方法设置。通过setOnTouchListener方法设置。1.创建一个布局文件,添加button控件。确定中间一个子控件是否处于显示状态。确定第一个子控件是否处于显示状态。确定最后一个子控件是否处于显示状态。确定是否只显示一个子控件。控件是否处于活动状态。控件包含多个子控件时。控件包含多个子控件时。控件包含多个子控件时。控件包含多个子控件时。原创 2024-03-15 11:23:22 · 382 阅读 · 1 评论 -
TextView
6. textStyle:设置字体风格,三个可选值: normal(无效果),bold(加粗),italic(斜体)2. android:shadowRadius:设置阴影的模糊程度,设为0.1就变成字体颜色了,建议使用3.0。3. android:shadowDx:设置阴影在水平方向的偏移,就是水平方向阴影开始的横坐标位置。4. android:shadowDy:设置阴影在竖直方向的偏移,就是竖直方向阴影开始的纵坐标位置。5. android:marqueeRepeatLimit:字幕动画重复的次数。原创 2024-03-14 18:43:26 · 375 阅读 · 0 评论