
Android开发小功能点
文章平均质量分 63
&岁月不待人&
每一个优秀的人,都有一段沉默的时光,那段时光是付出了很多努力的,却得不到结果的日子,我们把它叫做扎根。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
实现弹窗随键盘上移居中
Android实现弹窗随键盘上移的关键技术方案。通过监听键盘显示/隐藏事件,动态调整弹窗位置,确保输入框不被遮挡。核心步骤包括:1) 注册全局布局监听器检测键盘状态变化;2) 计算键盘高度和剩余可见区域;3) 重设弹窗的MarginLayoutParams参数实现动态定位。需注意处理横竖屏适配、不同系统版本兼容性等问题,并通过windowSoftInputMode="adjustResize"确保布局正确响应键盘事件。该方案适用于Dialog和DialogFragment,能有效提升表单原创 2025-06-09 11:11:20 · 481 阅读 · 0 评论 -
Android BottomSheetDialog使用详解
有时候遇到需要交互的,设计金额的,接口请求的底部弹窗,则需要自定义BottomSheetDialog,下面是一个简单实现。= null!) {): View {) {// 设置点击事件Toast.makeText(requireContext(), "确认按钮点击", Toast.LENGTH_SHORT).show()dismiss() // 关闭弹窗dismiss()原创 2025-03-12 10:11:40 · 760 阅读 · 0 评论 -
MPAndroidChart 图表库使用详解
因为最新款App需要做健康类的应用,于是对比了几个三方库后,还是选择star最高的MPAndroidChart来实现项目的需求。但是网上看的要么版本太老,要么就是需要VIP,或者不能满足自己的需求,所以这里自己进行一下总结下几个图表的使用及其常用方法。⚡ 一个功能强大且易于使用的 Android 图表库 ⚡。3.4 雷达图 RaderChart。我就去下载的aar自己本地依赖的。3.2 柱状图 BarChart。3.3 饼图 PieChart。这是github的三方库地址。去阿里云仓库下载的3.0.0。原创 2025-02-24 11:58:17 · 1062 阅读 · 0 评论 -
MPAndroidChart——饼图PieChart详细使用
第二个例子 主要是多进行一些配置,具体的api有啥作用请看著书。,用于可视化数据占比。它可以展示多个类别的数据,并以。是 MPAndroidChart 提供的一种。方式直观呈现各部分比例。原创 2025-02-24 11:56:00 · 864 阅读 · 0 评论 -
MPAndroidChart——柱状图BarChart详细使用
关键点:因为自带的堆叠柱状图会加你的第一个值,如果不减去第一个值,就会绘制2到(2+8)的区间,也就是2-10都会绘制,这肯定不符合需求设计,所以记得减去上一段的Y值。实现柱状图,能够良好的反应用户某一段时间的各类数据,或者用于展示各个季度的各种财务相关的数据。这次主要是app内需要实现三种柱状图,圆角柱状图,区间柱状图·,多组柱状图。具体的API调用和注释都在代码里了,我就不补充了。需求是需要展示当天的温度区间,用户的血压区间。取消X,Y轴的展示,增加虚线,增加圆角。灵感来自于堆叠柱状图的实现。原创 2025-02-21 18:13:27 · 1192 阅读 · 0 评论 -
MPAndroidChart——折线图LineChart详细使用
代码补充:上面的代码注释很完整,主要是新增了填充渐变色,Y轴设置的虚线,不展示点,x,y轴不展示等等。实现分数,心跳的折线图,本文主要介绍三方库里折线图的基础实现,详细的API作用和一些扩展。库版本不同可能会导致前缀不同,输入LineChart肯定会有提示的。主要用于存储和管理数据点,它是所有数据集(如。4. 折线图-渐变色填充。2.4.4 空数据处理。构造函数:我加了注释。原创 2025-02-21 15:09:27 · 1144 阅读 · 0 评论 -
Android 谷歌支付对接流程
需求:最新的项目需要对接谷歌的订阅功能,很久没对谷歌支付了,最开始还是绕了点弯路,在此进行一点小小的总结。2.1 在BaseApp里进行初始化的调用,BaseApp记得在manifest进行引用。在应用设置中,启用 Google Play 结算。依赖库:app的build.gradle下。,创建或选择一个现有的应用。上面的代码进行了注释。原创 2025-01-17 12:19:44 · 1604 阅读 · 0 评论 -
Viewpager2 页面切换无动画,不经过中间页面
需求:使用viewpager+tablayout来实现各种分类视频及其切换,但是当我从第一个tab点击第9个tab时,中间会一下子跳7个页面,这样闪烁的过程其实很难受。于是要求不要有过度的动画。* @param smoothScroll 为 True 表示平滑滚动到新item,为 false 表示立即滚动到新item。* @param item 要选择的项目索引。需求:viewpager2禁止左右滑动。原创 2025-01-15 12:32:39 · 504 阅读 · 0 评论 -
Android 毛玻璃 高斯模糊 五种方法,赶紧用
需求:Android实现模糊真的很烦,每次UI画出来就觉得真的很烦。一般不会做,每次做就觉得有点烦,有时候是模糊图片,有时候是模糊有个背景。因为遇到模糊的需求的时候比较少,所以也没总结。这次遇到了,还让我走了好些绕路。这次进行个小小总结。总结了用到的五种实现方式。原创 2025-01-10 10:41:59 · 5750 阅读 · 0 评论 -
Android 判断RecyclerView是否滚动到底部
tips:recyclerView.scrollState == RecyclerView.SCROLL_STATE_IDLE 这个判断条件很重要哦。需求:列表滚动后,判断是否滚动到底部,展示加载更多的Loading文案和动画。原创 2025-01-09 18:34:36 · 535 阅读 · 0 评论 -
Android切换语言不退出App
中设置语言是为了在运行时动态更新语言,尤其是当用户切换语言后,某些界面可能需要重新加载来反映新的语言设置。2.initData里面就是数据赋值渲染UI,如果调用Activity的recreate方法会闪退,别调用。2.所有的基类进行设置,记得application在manifest应用。1.既然只刷新当前UI,就得生成新的context。原创 2025-01-09 18:16:08 · 831 阅读 · 0 评论 -
Retrofit网络请求二次封装
(之前用过Any,但是后端返回的数据格式有时候会不一样,有可能是Boolean,String,或者就是个列表,并不是一个json,所以后面我换成了JsonElement)App应用程序通过 Retrofit 请求网络,实际上是使用 Retrofit 接口层封装请求参数、Header、Url 等信息,之后由 OkHttp 完成后续的请求操作。网络请求在App开发中是不可避免的开发功能点,Android自带的ottp用于网络请求,于是便衍生了各种便捷的网络请求三方库。retrofit的网络请求的工作本质上是。原创 2024-10-24 18:30:15 · 838 阅读 · 0 评论 -
Andorid 应用更新(升级)
如果使用 Google Play 提供的应用内更新 API,你通常不需要任何额外权限。如果你的 APK 文件下载到了外部存储(如 SD 卡或公共下载文件夹),你需要这个权限(Android 10 及以上通常不需要使用外部存储权限,使用。: 如果用户通过浏览器或自定义下载器安装应用,Android 8.0(API 级别 26)及以上需要明确授予安装 APK 的权限。如果你使用 Google Play 应用内更新 API,它处理了所有更新流程,开发者不需要操心文件读写和安装权限。1.请求接口,是否需要更新。原创 2024-10-24 10:46:31 · 607 阅读 · 0 评论 -
Android 通过相机和系统相册获取图片,压缩,结果回调
在常规的App开发中,很多时候需要用户上传图片来进行一些业务上的实现,例如用户反馈,图片凭证等。我的Retrofit请求自己又封了一下,这儿就不粘贴。传文件和普通接口会有些不同,注意一下就好了。流程请看代码注释,其中的fileprovider,需要自己在manifest中声明。我使用的是EasyPermission框架,也可以自己写。你允许分享的文件路径。相关权限回调处理,可以去看我的另一篇博客。指的是一个 XML 文件,你需要在。标签,并定义了可共享的目录。目录下创建这个文件,告诉。原创 2024-09-14 09:52:48 · 536 阅读 · 0 评论 -
EditText输入框单独设置hint字体大小
这次的需求,因为输入的手机号很大,但是提示文案大了后不好看,所以需要对hint字体单独设置。但是在sml中,是无法去设置hint字体大小的,那么就从代码入手。一般都只会对hint提示做颜色上的设置,而他的字体大小是随着输入内容大小一致的。平时我们在开发时经常会用到输入框,用户登录,验证码,反馈,文本输入等等。2.实现思路 SpannableString。原创 2024-09-12 17:36:48 · 458 阅读 · 0 评论 -
获取App应用列表,不需要权限
但是获取应用安装列表的权限现在属于敏感权限,即QUERY_ALL_PACKAGES权限。业务需要获取用户的已安装的应用列表进行上传。2.实现代码 AppUtils.kt。1.Manifest文件里进行配置。这样就是获取了安装列表的数据。原创 2024-09-11 14:36:45 · 1002 阅读 · 0 评论 -
Android 获取设备相关信息
在做某些项目时,需要上传必要的设备信息给服务器用于风控在此做一下总结。主要抓取设备id操作系统版本,设备型号,IMSI,路由器,mac地址,设备mac地址,安卓id,经度,纬度,ip地址....原创 2024-08-29 16:42:08 · 722 阅读 · 0 评论 -
Android 获取通话记录
在某些App的开发者,获取通话记录有时候是必要的(现在都要申请相对于权限哦,App上架得说明为啥获取此权限)。因为工作风控数据收集经常会用到,在此做个总结。原创 2024-08-28 19:02:27 · 1185 阅读 · 0 评论 -
Android 实现环形进度条
progressDrawable属性:确定进度条的背景,进度条颜色等等。项目中常常需要用到进度条,很简单,这儿做一个简单的总结和实现。mmmmmm.xml:drawable文件代码。style属性:确定他是什么类型的进度条。可以看出来这儿和上面是大不一样的。aaa drawable文件。里面的属性就是字面意思。原创 2023-11-29 15:54:10 · 3103 阅读 · 0 评论 -
Android 分享图片和文案
如果设置,此Intent的收件人将被授予对Intent数据中的URI及其ClipData中指定的任何URI执行读取操作的权限。大多数App的需求中,有分享功能,点击唤起系统的分享栏,然后分享内容,例如指定文案,链接,图片等等。2.the.shy.world.top.one.myapplication替换为你的包路径。4.使用Intent实现分享,在intent里put Extra()图片和文本。根据控件临时生成一个图片进行分享,具体的逻辑请看实现代码,代码中有注释。2.图片拿到缓存里,用于分享。原创 2023-11-06 11:43:01 · 1445 阅读 · 0 评论 -
Android 接入ttf字体文件
这样,你就可以在 TextView 中使用自定义的 TTF 字体了。确保 TTF 文件位于正确的目录并指定正确的资源引用。在字体文件准备好后,你可以在 TextView 中使用。然后实现 TTF(TrueType Font)字体文件并将其应用到 TextView。一些炫酷的App总会加一些App自己的字体。这时候需要找UI提供ttf字体文件。属性中,你可以指定 TTF 字体文件的资源引用,例如。目录下的字体文件的名称,或者使用。3. 在业务逻辑代码中。原创 2023-11-06 11:11:14 · 5322 阅读 · 0 评论 -
Android 图片翻面动画
首先新建一个翻转动画,动画时间为1000毫秒,并且绑定imageView,动画添加监听器,因为部分需求需要在动画结束后进行一些操作。下面的代码,为啥是延迟500毫秒,因为总动画为1000秒,翻面是180度,当500毫秒时,刚好开始看到背面,所以就是给用户一种流畅的卡牌翻面的效果。项目需要实现塔罗牌的翻面效果,需要点击图片后,图片实现翻面,并且翻面过程中,替换成图片资源,类似于扑克牌翻面。图片实现翻面效果,并且在动画执行到一半(刚好到图片背面的时候,进行图片替换)原创 2023-11-06 10:56:46 · 620 阅读 · 0 评论 -
Android侧滑栏(一)可缩放可一起移动的侧滑栏
在实际的各类App开发中,经常会需要做一个左侧的侧滑栏,类似于QQ这种。今天这篇文章总结下自己在开发中遇到的这类可以跟随移动,且可以缩放的侧滑栏。原创 2023-08-11 11:12:46 · 2381 阅读 · 0 评论 -
Android 屏幕适配各种宽高比的手机
由于android 手机的屏幕宽高比样式太多了,在设计UI时,很多时候,会因为宽高比,分辨率不同会有展示上的差异。原创 2023-07-24 17:09:10 · 2391 阅读 · 0 评论 -
Andorid 实现倒计时,定时任务
private val imageList = listOf(R.mipmap.second_bg_2, R.mipmap.second_bg_ok) // 替换成你的图片资源。在Andorid的实际开发中经常会用到倒计时,无论是可见的进度条,倒计时,广告,还是背后的一些操作,今天来总结下几种倒计时的实现方法。需求是在某一段时间内,不断的切换图片的资源,因为UI没时间做动画,所以自己简单实现一下。以上就是android中,我常常用来实现倒计时的四种方式。当然你也可以使用这俩货实现定时任务。原创 2023-07-13 19:30:47 · 930 阅读 · 0 评论 -
Android 手机来电 获取来电信息,接听/挂断电话
之前看了许多博客,结果发现,很多都是1几年的文章,很多方法都已经被废弃了,或者不适配高版本的android系统,于是去查了查开发者和stack overflow,emmmm,目前这个方法可行。说实话,现在手机系统的来电展示不错了,所以这种App需要足够做的花哨好用才行,但是这又涉及用户的敏感权限和应用市场的卡脖子。监听用户手机来电,弹起App内自定义的来电展示,并且展示来电电话,用户可以接通和挂断。小于Android9时,利用反射的原理来调用方法,因为Api接口不公开了,调用不了。第三个:接听和挂断电话。原创 2023-07-05 17:20:46 · 5228 阅读 · 7 评论 -
Android 实现Loading弹窗
在我们网络请求,异步加载数据,等待函数回调,数据库的操作等耗时的过程中,这个时候,界面在等待返回数据来进行展示,此时加上一个loading弹窗会显得有好很多。2.ANR,在某些情况下,如果不屏蔽用户点击,用户的其他操作会导致我们的操作中断,甚至导致ANR。1.系统的Loading加载弹窗,方便快捷,在不做特定的UI需要下,实现快。1.用户无法感知我们正在进行的操作,因为此时UI在等待数据返回渲染。2.然后自定义一个Dialog,给图片加一个旋转的动画。总结下一个简单的需求,后续需要用到的时候可以直接用。原创 2023-05-23 21:34:27 · 9596 阅读 · 0 评论 -
Android 底部导航栏(四、ViewPager+RadioGroup+Fragment)简单易懂
底部导航栏在Android应用中随处可见,今天使用ViewPager+RadioGroup+Fragment这三个控件来实现此功能。前面写了有三种实现方式,有兴趣可以去看看,Android 底部导航栏(一、BottomNavigationView+Menu+Fragment)_&岁月不待人&的博客-CSDN博客_android 底部导航栏Android 底部导航栏(二、自定义View+Fragment)_&岁月不待人&的博客-CSDN博客。原创 2022-11-07 18:11:35 · 3011 阅读 · 0 评论 -
Android 底部导航栏(三、ViewPager+TabLayout+Fragment)简单易懂
Android 3.0后引入的一个UI控件——ViewPager(视图滑动切换工具),Viewpager使用起来就是我们通过创建adapter给它填充多个view,左右滑动时,切换不同的view。Google官方是建议我们使用Fragment来填充ViewPager的,这样 可以更加方便的生成每个Page,以及管理每个Page的生命周期。可以用来主页/模块切换,图片轮播,新手引导等等。ViewPager 全面总结_淡然一笑、的博客-CSDN博客_viewpager。原创 2022-11-04 18:24:48 · 6275 阅读 · 1 评论 -
Android 底部导航栏(二、自定义View+Fragment)
总结:我这上面只实现了简单的点击切换,用自定义View来实现底部导航栏,很自由,可以实现一些稀奇古怪的需求,但是很多方法的回调,切换时的动画,就需要自己去实现,可能会相对复杂一些。最后加上Fragment的切换,点击监听等等,坏处的话就是自己写的,可能没有封装好的那么完善,很多方法,状态需要自己去写。上一片文章用的是BottomNavigationView+Menu+Fragment,但是可能有时候需求不一样,menu的样式不太够,所以需要自定义View来实现。原创 2022-11-02 15:01:04 · 2849 阅读 · 3 评论 -
Android 输入框(EditText)的输入限制,数字英文邮箱,可见\隐藏切换,踩过的坑!
常规的输入框输入需求有纯数字,字母,混合输入,键盘默认打开数字键盘,密码可见\隐藏切换,键盘的收起弹出等等。我们可以从xml,inputFilter,inputType入手原创 2022-10-19 18:19:02 · 8936 阅读 · 1 评论 -
Android 发送邮件(简单很快啊)
代码很简单,直接复制,各个属性都在上边写明,然后修改就可以用。它主要是通过调用系统的mail发送邮件。如果你安装了QQ邮箱、gmail邮箱、163邮箱的android客户端,自己选一个,选中后会自动填充内容,如果你没有安装上述邮件客户端,那么,就调用系统的邮件客户端,部分会提示你绑定邮箱,你可以用自己选。这个原理也是一样,只是这个会调起来更多的选择,例如微博,淘宝啊之类的。我们标识的邮件(mailto),但是实际执行却成了分享文件,虽然其中也有邮件客户端,但是却增加了用户的操作步骤。原创 2022-10-18 18:19:17 · 3813 阅读 · 0 评论