自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(492)
  • 资源 (19)
  • 收藏
  • 关注

原创 专门存放图片的地方

2022-01-13 09:21:47 227

原创 博客导航——一站式搜索(所有博客的汇总帖)【微信开发】

课程巧用第三方快速开发Android App 热门第三方SDK及框架Android StudioGoogle主推-Android开发利器——Android Studio,这可能是最全的AS教程!Android Studio 2.0 Preview 4 的逆袭以及各种神注释Android Studio重构之路,我们重新来了解一下Google官方的Android开发工具Andr...

2018-10-24 15:51:43 1320 2

原创 记录Gradle project sync failed 问题解决方案

1、打开setting2、找到如下设置3、选择java 15!!!然后进行重启就可以运行了到下班点了,今天整的差点没下班~

2024-04-15 19:12:40 117

原创 Gradle各版本下载地址

只需将后面的版本号修改即可。

2024-04-15 17:54:35 106

转载 Android 点阵体文字动效,祝福永远的女神

Android 点阵体文字动效

2024-03-22 10:36:20 34

转载 Android 放大镜窥视效果

本篇和之前的很多篇文章一样,都是实现Canvas图片绘制,很复杂的效果我们没有涉及到,但是在这些文章中,都会有各种各样的问题和思考。总之,我们要善于利用矩阵和设计思想,绘制我们的想象。

2024-03-20 18:43:30 31

转载 Android 录音监听动画效果

在很多app种内置了语音助手,也存在各种动画,主要原因是处理2个阶段问题,第一个是监听声音的等待效果,第二个是语意解析存在一定耗时的等待效果,前者要求有声音输入时有视觉反馈,后者让用户知道在处理某些事情,同时呢,这个效果还能互相切换,这是一般语音监听动画的设计逻辑。本文提供一种,希望对大家有所帮助。总体上这个设计不是很难,难点是状态切换的一些过渡设计,保证上一个动画结束完成之后才能展示下一个动画,其词就是抖动逻辑,实际上也不是很复杂,第三方SDK的音量值一般都是有的,实时获取就好了。

2024-03-20 18:30:42 40

转载 Android 闪烁描边效果

什么是蒙版:所谓蒙版是只保留了alpha通道的一种二维正交投影,简单的说就是你躺在地上,太阳光直射下来,背后的那片就是你的蒙版。因此,它既不存在三维特征,也不存在色彩特征,只有alpha特征。那只有alpha通道的图片是什么颜色,这块没有具体了解过,但是理论上取决于默认填充色,在Android上最终是白色的,其他平台暂时还没了解。

2024-03-20 16:26:33 26

原创 自定义实现 View.DragShadowBuilder 设置拖拽视图的大小

自定义拖拽视图的大小

2024-01-28 11:35:54 258

原创 recyclerview滚动辅助器,每次横向滚动展示完整的item

RecyclerView在24.2.0版本中新增了SnapHelper这个辅助类,用于辅助RecyclerView在滚动结束时将Item对齐到某个位置。特别是列表横向滑动时,很多时候不会让列表滑到任意位置,而是会有一定的规则限制,这时候就可以通过SnapHelper来定义对齐规则了。

2024-01-18 13:58:07 437

原创 处理横向textview 跑马灯效果,频繁刷新问题

自定义view处理跑马灯闪烁问题

2023-11-29 19:22:32 247

原创 APP 备案公钥、签名 MD5、SHA-1、SHA-256获取方法。

APP 备案公钥、签名 MD5、SHA-1、SHA-256获取方法。

2023-10-15 16:03:01 1069

原创 【建议收藏】106道Android核心面试题及答案汇总(总结最全面的面试题)

【建议收藏】106道Android核心面试题及答案汇总(总结最全面的面试题)

2023-10-09 15:50:02 126

转载 Android 自定义开源库 EasyView

自定义view:蓝牙Mac地址输入控件圆环进度条控件计时文字控件简易输入控件,可用于密码框、验证码输入框进行使用饼状进度条简易弹窗,你可以选择自定义xml使用或者快捷使用两种方式

2023-10-09 15:10:10 195

原创 12宫格 抽奖逻辑实现【直接可用】

完美实现12宫格抽奖效果

2023-07-17 11:18:28 440

原创 安卓开发实用小技巧——Android禁止多点触控

禁用全局多点触控

2023-06-18 11:24:36 985

原创 自定义view 拖拽、自吸边控件

自定义可吸附拖拽的view

2023-06-17 23:58:16 136

原创 app:tint 无法换色、不好使解决方案

在XML中为ImageView设置前端颜色时,直接使用android:tint会有效果,但是编译器标红了,提示Must use app:tint instead of android:tint。但把android:tint换成app:tint后,imageview的颜色却没有生效。

2023-06-05 20:21:36 588 1

原创 【Android Gradle 插件】更新依赖方式,同时解决github三方库引用无法使用问题

在之前的 build.gradle 配置 中 , 在 " buildscript / dependencies / classpath " 中 , 配置 Android Gradle 插件版本 是 4.2.1 , 也就是。代码的含义是 解析依赖时 , 只能使用本脚本块中的 Maven 仓库 , 不能使用 Module 子项目中的依赖;在 dependencyResolutionManagement 脚本块 中 定义的。在此处 主要是为了说明 Gradle 插件的版本 , 没有其它含义;

2023-05-30 17:48:02 2176 1

原创 命令行生成Android jks签名文件并获取jks信息

Java keytool是密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。在Terminal输入以下命令,可查看keytool所有命令选项。这里来一个流程示范,仅供参考,正式发布签名不建议这样写。使用keytool生成签名文件。Terminal控制台输出如下。查看keytool的参数说明。下面是一个完成的创建流程。

2023-05-05 07:41:15 1330 1

转载 一个非耗时操作Input ANR引发的思考

今天喜提测试给的anr , anr报错信息如下。看到这个 anr 报错信息 ,Input事件导致的anr ,感觉和窗口没有焦点有亿点关系。

2023-03-21 13:51:17 562

原创 处理Bug:嵌套RecyclerView加载数据后页面自动滑动问题

的属性就好了,至此listview点击的灵异事件告一段落。心得:遇到不会不懂的地方除了网上查询资料之外,也可以多多去尝试每种属性的作用,多阅读官方文档(我始终觉得还是读原文的比翻译的理解的会更好)。当数据长度到达某个阶段后recyclerView会自动往下滑一段,直到某一个item完整展示在屏幕中。该属性是当一个为view获取焦点时,定义viewGroup和其子控件两者之间的关系。这个是因为recyclerview获取到了焦点。通常我们用到的是第三种,即在Item布局的根布局加上。这里的属性一共有三种。

2023-01-06 11:07:09 1016

原创 App报错: No package ID ff found for ID 0xffffffff

constraintlayout 2.0.0-alpha4版本的问题,回退到2.0.0-alpha3就可以了.【或者是使用最新版本也可以】PS: 这个是在一个英文网站上搜到的,刚好受用,哈哈.

2022-12-30 10:36:10 1999 1

原创 谷歌原生GPS定位处理【locationProvider】

谷歌原生GPS定位处理【locationProvider】

2022-12-28 10:26:54 537

原创 Android中layout-sw700dp、layout-w700dp和layout-h700dp的区别

其实,他们和drawable-hdpi/ drawable-mdpi等的使用类似,都是为了实现适配各种Android手机屏幕而使用的,只是drawable用来管理不同大小图片资源,layout用来管理不同布局,values用来管理不同大小的值。这里的sw代表smallwidth的意思,当你的屏幕的绝对宽度大于600dp时,屏幕就会自动调用layout-sw600dp文件夹里面的布局。当你的屏幕的相对宽度大于600dp时,屏幕就会自动调用layout-w600dp文件夹里面的布局。

2022-12-26 17:34:18 237

转载 Android软键盘的监听与高度控制的几种方案及常用效果

本文我们会一起复习一下软键盘高度获取的几种方式,布局贴在软键盘上效果的实现与优化。事情是这样的,有一天我逛PDD的时候,发现这样一个效果,在搜索页面中,如果软件弹起了就会有一个语音搜索的布局,当我们隐藏软键盘之后就隐藏这个布局,然后我又看了一下TB的搜索页面,都是类似的效果,但是我发现他们的效果都有优化的空间。

2022-10-18 08:54:22 1909

转载 Android 架构MVC MVP MVVM+实例

MVC、MVP和MVVM是软件比较常用的三种软件架构,这三种架构的目的都是分离,避免将过多的逻辑全部堆积在一个类中。在Android中,Activity中既有UI的相关处理逻辑,又有数据获取逻辑,从而导致Activity逻辑复杂不单一难以维护。为了一个应用可以更好的维护和扩展,我们需要很好的区分相关层级,要不然以后将数据获取方式从数据库变为网络获取时,我们需要去修改整个Activity。

2022-10-12 16:46:32 1218

转载 17个XML布局小技巧

如上,本文一共介绍了17个在日常编写xml的过程中对提升效率和提升性能的属性,如果你也有心得,欢迎评论补充。

2022-10-08 08:58:55 371

转载 没错,TheRouter 是我写的

补充:没错,货拉拉开源的路由库 —— TheRouter 是我写的大约在17年底到18年初的时候,我经常会讲一些当时做模块化开发的心得和踩坑历程。比如这几篇都是那时候写的:《》、《》、《》。但后来我慢慢不讲这些了,因为我发现做模块化,虽然我们能总结出来一套较为通用的解决方案,但很难通过几次短短的技术分享就跟别人讲清楚。并且很容易让人产生误解:我们是小公司,不需要做模块化。再加上因为当时是基于公司已有的基础建设,和制度的一些限制,并不能对外开源一套较为完善的模块化方案,这个种子就一直埋下了。

2022-09-26 16:12:00 193

原创 Glide加载https图片时 忽略证书校验

Glide加载https图片时 忽略证书校验

2022-09-20 11:08:18 866

原创 BaseQuickAdapter与recycler版本冲突导致setOnItemClickListener报错!

BaseQuickAdapter设置setOnItemClickListener报错

2022-07-19 16:56:33 1437 1

原创 网络请求日志拦截器【直接可用】

网络请求中的拦截器,任意可用,我是从okgo里面拷贝出来的,还是不错的 使用的时候如下:完整使用如下,我用的是Retrofit,可以直接使用我的网络工具类也行:

2022-07-07 17:09:25 682

原创 安卓开发中英文切换需求

其实不止是中英文,只是这个比较有代表性,什么语言都可以切换。安卓里面控制语言就是新建包,在res里面新建values-zh-rCN和values-en-rUS,zh代表的是中文,en代表的是英文。把strings相对应的内容复制过去。我把我的代码粘一下;(注: 要将目录展示由Android切换为Project,再新建包,否则新建包后无法显示新建的values包)zh里面就正常写中文就行。布局很简单,就一个按钮。现在距离实现中英文切换已经快了。在MainActivity中写上在按钮绑定的事件:...

2022-07-07 15:06:30 572

原创 Fragment 中的常用方法 isAdded()、isVisible()、isHidden()、isRemoving()、isResumed()、 isInLayout()

Fragment 中的常用方法 isAdded()、isVisible()、isHidden()、isRemoving()、isResumed()、 isInLayout() 等详解

2022-06-23 16:21:42 968

原创 遍历手机SD卡所有文件,找到相关文件【直接可用】

遍历手机SD卡所有文件,找出相关类型的文件集合

2022-06-17 19:48:21 188 1

原创 关于OOM。内存泄露的一点优化想法备注

Android 中的内存泄漏的原因非常简单,只要理解一句话,那就是生命周期较长的对象持有生命周期较短的对象的引用

2022-03-05 17:41:39 2728 5

原创 AIDL报错,bindService一直连接不上、不起作用。

先说问题,最近用aidl,发现bindService根本就不走,不知道咋回事,明明写的没有任何毛病啊?//aidl绑定 private void bind() { Intent intent = new Intent(); String pkg = "com.example.mzz_service";//需要调用的服务端【另一个APP】的包名 String name = "com.example.mzz_service.service.Remot

2022-03-03 11:57:55 4244 16

转载 刘润:在李彦宏这本书里,我看到了未来交通的模样

(本文首发于“刘润”公号,订阅“刘润”公号,和我一起洞察商业本质)这段时间,我读了一本书,叫《智能交通》。一开始,我只打算花30分钟快速翻一下。但越读越有意思,越读越有意思。最后,我居然逐页读完了这本400多页的大部头。忍不住往前翻,看看是谁写的。李彦宏。我惊讶地问百度的同学,这本书,真是李彦宏写的吗?他们说,真是。这本书,真是李彦宏自己大段大段地写,然后发给团队编辑的。而团队的主要工作,是前期收集素材,和后期编辑校对。书稿都要交稿给出版社了,他还在不断发来增补的章节。不但出了书,他甚至还亲

2022-02-24 16:51:01 323

原创 安卓安装apk之后直接打开频繁重启、按home键返回,再次打开,重新启动

Android 安装完成后直接点击[打开],导致按home键返回,再次打开,走重启流程。如果先点击【完成】再打开,不会有问题。解决方法:在lanchActivity的onCreate()方法中加如下代码,一定要在setContentView()方法之前if (!isTaskRoot() && getIntent() != null) { String action = getIntent().getAction(); if (getI

2022-02-10 16:45:44 2899 2

原创 自定义get set方法

首先点击这里然后接下来点击+号自定义get set模式【名字无所谓,随便取,但是别太随意了哈,不然以后自己都蒙蔽】重新书写get set方法【这是我的,可以直接拷贝可用】#if($field.modifierStatic)static ###end$field.type ###set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier.

2022-01-12 16:19:05 352

解决 Gradle project sync failed 使用的jdk-15.0.2

jdk 15

2024-04-15

videocompressor.zip

视频压缩的工具类,可以直接使用的,里面三种压缩模式【高中低】,我用的是低质量压缩,大概100M的视频,会压缩成8-9M左右的视频。

2021-03-05

FileUtils.java

文件工具类

2020-05-27

飞秋2013.zip

飞秋2013正式版;

2020-04-28

Mazhanzhu.zip

实现抖音那种竖直方向一次滑动一页的效果。滑动要流畅不卡顿,并且手动触摸滑动超过1/2的时候松开可以滑动下一页,没有超过1/2返回原页。 手指拖动页面滑动,只要没有切换到其他的页面,视频都是在播放的。切换了页面,上一个视频销毁,该页面则开始初始化播放。

2019-09-18

SignIn-master.zip

解决思路: 1、用两个网格布局的RecyclerView分别展示日历的星期和日期; 2、获取当天日期在日历中所处的位置,由于当天日期是展示在第三行的,每行有七个日期,位置从零开始算,也就是第三行是从第14个位置到第20个位置; 3、大家会问,知道这些我们还是无法确定当天日期到底在第三行的哪个位置啊?不要着急,我通过获取当天日期所对应周几,得到周日对应0,周一对应1,以此类推周六对应6,发现和14相加,正好是我们想要的位置!ok!bingo!  4、知道了当天所处的位置,我们就可以分别向前和向后推算总共35个日期,一张日历就搞定了!

2019-06-13

这是水印效果资料

水印效果,这是水印效果,

2018-11-26

RecyclerView的GallerySnapHelper

RecyclerView横向滚动位置控制器,RecyclerView横向滚动位置控制器,RecyclerView横向滚动位置控制器,RecyclerView横向滚动位置控制器,RecyclerView横向滚动位置控制器,RecyclerView横向滚动位置控制器

2017-12-06

一个精致的打钩小动画

一个精致的打钩小动画一个精致的打钩小动画一个精致的打钩小动画一个精致的打钩小动画一个精致的打钩小动画一个精致的打钩小动画一个精致的打钩小动画

2017-11-17

效果实现集合

主要是为了学习Material Design新控件,具体内容,请看以下文章: Material Design 兼容性控件学习 RecyclerView之ItemDecoration RecyclerView之使用ItemTouchHelper实现交互动画 MaterialDesign之SearchView全面解锁 MaterialDesign之学一波Palette MaterialDesign之对TabLayout的探索 MaterialDesign之AppBarLayout与CollapsingToolbarLayout的学习

2017-11-15

加载等待动画

这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画,这是数据加载等待动画

2017-11-09

万能分割线

这是万能分割线,这是万能分割线,这是万能分割线,这是万能分割线,这是万能分割线!!!!

2017-11-02

数据库的简单操作

一些数据库的简单操作知识,包括新建一个数据库帮助类,继承自SQLiteOpenHelper,复写onCreate() 和 onUpgrade()

2017-11-01

登录、包括异地登处理

输入用户名和密码 ,从本地文件userinfo.json中读取users。判断此用户名是否在users中,如果不在则加入users,每次退出Activity都使用AES算法加密users,然后保存到userinfo.json中。用户名下拉菜单是由PopupWindow + ListView 实现。

2017-10-20

评论点赞功能实现,单独抽取出来的

这是点赞评论的功能实现,可能与微信的不太一样,我也是参考别人做的,主要是思路,思路能够实现就好了,这是点赞评论的功能实现,可能与微信的不太一样,我也是参考别人做的,主要是思路,思路能够实现就好了

2017-09-27

标签动态添加,点击添加到上面,点击上面标签,添加到下面

标签动态添加,点击添加到上面,点击上面标签,添加到下面,复制就可以直接使用,亲测可用,标签动态添加,点击添加到上面,点击上面标签,添加到下面,复制就可以直接使用,亲测可用。

2017-09-18

Android Fragment嵌套ViewPager,ViewPager嵌套多个Fragment

Android Fragment嵌套ViewPager,ViewPager嵌套多个Fragment。Android Fragment嵌套ViewPager,ViewPager嵌套多个Fragment

2017-09-18

常用工具类

Android快速开发系列 10个常用工具类

2017-06-05

网络状态监听

网络状态监听

2017-06-05

Android仿iOS实现三级联动选择器

当需要三级联动的时候,给构造方法传入STYLE_THREE,当只需要两级联动的时候,传入STYLE_TWO。。。

2017-06-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除