
Android-实例
夏至的稻穗
只要结果是正确的,过程你让我多痛苦都行
展开
-
实现一个可定制化的流布局 FlowLayout
本文已授权玉刚说公众号FlowLayout 继承于 ViewGroup ,可以快速帮您实现 Tablayout 以及 Label 标签,内含多种效果,帮您快速实现 APP UI 功能,让您专注代码架构,告别繁琐UI。如果你也想自己写一个,可以参考以下几篇文章实现一个可定制化的TabFlowLayout(一) – 测量与布局实现一个可定制化的TabFlowLayout(二) – 实现滚动和平滑过渡实现一个可定制化的TabFlowLayout(三) – 动态数据添加与常用接口封装实现一个可.原创 2020-07-14 17:37:14 · 1013 阅读 · 0 评论 -
Android 探索增量升级
一、介绍Android 的增量升级,不同热修复和热更新,它只是通过和老的 apk 对比,识别出与新 apk 之间的二进制差异,从而生成的补丁包(差量包);这样的好处在于,不用全部下载所有的文件,比如一个游戏 1个多G,如果每次更新,都下载1个多G,相信这个游戏基本没人下,但是使用差量包,则需要几十或者几百兆,这样对用户来说,相对能接受些。通过这篇文章,你将看到:差量包的生成cmake 实现 bsdiff 升级接口的过程生成 so 工其他工程使用工程连接:https://github.com原创 2020-06-10 13:56:48 · 1193 阅读 · 1 评论 -
ViewPager2 入门学习
ViewPager2 从出来到现在已经有一段时间了,它修复了 ViewPager 常见的一些 bug,以及支持竖直方法和 RTL , 现在很多小伙伴已经开始使用上了。那么,学不懂也要学。一、使用首先,你的工程必须支持 androidx,我觉得新开的工程都可以使用 androidx了,一些主流的第三方库也都支持,而且 google 也说28以后,不再支持 support 库,当然这个看个人。...原创 2020-04-28 07:56:03 · 2643 阅读 · 3 评论 -
Java 反射理解以及Android实战
学会使用 Java 的反射机制,能够让你在实际工作中,如虎添翼。一 什么是反射反射指支持程序在运行状态时,都能够获取该类的内部信息,包裹其中的方法,变量等信息,并可于运行时改变方法或者其内部变量。简单来说,如果某个系统源码中某个类,比如 Recyclerview 的 mFirst 变量,我想动态改变这个值,就可以使用 反射获取到这个值,并改变它。java 反射的几个主要的类如下:...原创 2020-04-06 21:16:42 · 362 阅读 · 0 评论 -
Recyclerview 实现双联表联动
今天实现的效果如下:工程可以参考:实现一个可定制的 Tab 或者 Label flow一、左边联动右边首先,先看 recycleview 的联动;我们知道 ,要让Recyclerview 滚动,我们可以使用 mRecyclerView.smoothScrollToPosition(position);使布局平滑移动,但是需要注意的是;当我们点击左边的目标 item 2时;需要分几种情...原创 2020-01-25 19:59:38 · 2875 阅读 · 1 评论 -
实现一个可定制化的TabFlowLayout(三) -- 动态数据添加与常用接口封装
上面咱们已经实现了滑动的效果,今天来实现数据的添加;效果如下:这里学习一下 listview 或 Recyclerview 的数据封装,我们也整蛊一下 adapter;考虑到,顶部 tab 可能要有未读消息,或者不同的控件,所以 layoutId 肯定是要有的,datas 数据肯定也是,且这个 data 类型用泛型修饰;所以,大致可以这么写:/** * @author by zhe...原创 2020-01-10 16:05:08 · 770 阅读 · 0 评论 -
实现一个可定制化的TabFlowLayout(二) -- 实现滚动和平滑过渡
这次,我们来实现第二个模块,即view 的滚动和使用 Scroller 平滑滚动,在这篇文章中,您将看到:View 的事件传递简析ScrollerBy 和 ScrollerTo 的区别,以及使用 Scroller 实现平滑过渡前面中,我们已经通过 FlowLayout 实现测量和布局,这次新建一个类 ScrollFlowLayout 是专门实现滚动逻辑一、View 的事件传递当点击一...原创 2020-01-10 16:04:36 · 952 阅读 · 0 评论 -
实现一个可定制化的TabFlowLayout(一) -- 测量与布局
今天要实现的效果如下,支持数据直接写入或者在 XML 中布局一、自定义 ViewGroup从上面的效果看,自定义有挺多种选择,比如继承 LinearLayout 或者 HorizontalScrollView … ,但其实直接继承ViewGroup去动态测量更香;首先,步骤也很简单:继承 ViewGroup重写 onMeasure,计算子控件的大小从而确定父控件的大小重写 onLay...原创 2020-01-10 15:52:29 · 1256 阅读 · 0 评论 -
自定义控件实例(二) -- 颜色选择器
先看效果:工程以及说明: 颜色选择器再写这个控件之前,那叫一个纠结啊,如果都封装好,但是每个人需要都不一样,有些人可能只需要彩色条,有人可能只需要渐变的。所以干脆点,两个都写出来,自己去配置或者下载改成自己想要的。一、渐变条原理比较简单,其实就是使用着色器shader 中的 LinearGradient 即可,从下图分析左上角为白色,底部为黑色,而右上角为配置的颜色,这里是蓝色。单独...原创 2019-11-12 11:38:16 · 564 阅读 · 0 评论 -
自定义控件实例(一) 仿QQ小红点
最近在复习Android,重新捡起自定义控件。总结一句话,不要用小聪明规避问题,不然你下次遇到了,你还是什么都不懂。先看效果:工程以及说明: QQ小红点首先,看到这个,想到的就是使用贝塞尔曲线了。如果你对怎么绘制不了解,可以先通过启舰大佬,了解QQ小红点怎么实现的。自定义控件三部曲之绘图篇(十五)——QQ红点拖动删除效果实现(基本原理篇)不过上面的文章,只能在view级别上使用,就算...原创 2019-11-12 11:08:59 · 313 阅读 · 0 评论 -
Android 多点触控与图片缩放
上一章,我们学习了手势 GestureDecetor 的基本使用 Android 手势学习 GestureDetector,这一次,我们来学习使用 ScaleGestureDetector 来实现一个图片缩放的效果,如下:[外链图片转存失败(img-Y4chYf9f-1563977443283)(https://github.com/LillteZheng/ViewPagerHelper/raw...原创 2019-07-25 10:18:41 · 557 阅读 · 0 评论 -
Android 快速发送邮件
欢迎转载,也请保留这段申明 ,原文地址:https://mp.youkuaiyun.com/mdeditor/81051646在一般的 apk 中,我们都会设置一个让用户提意见的功能,常见的做法,就是申请一个通用邮箱,让内容发送过来就好了。而这里的邮箱发送,属于第三方邮件发送,即本来你申请的是 163 的,然后却用 QQ 邮箱去登录,那肯定是不行的,所以需要申请授权码,申请之后,就用账号加授权码发送即...原创 2018-12-24 15:13:32 · 542 阅读 · 0 评论 -
局域网 二维码fe分享图片 (带密码验证)
欢迎转载,也请保留这段申明最近接到一个需求,需要实现一个局域网的图片二维码分享功能;具体怎么样呢,先看下面的效果图:原创 2018-07-15 11:54:22 · 3103 阅读 · 0 评论 -
5分钟带你搞定APP引导界面
作者: 夏至,欢迎转载,也请保留这段申明,谢谢。 http://www.jianshu.com/p/dfc188f130fd今天讲一个比较简单的东西,那就是每一个app在第一次启动的时候,都会出现的引导界面;刚开始的时候我还想自定义下面的一些小圆点;然后网上查了一下,发现有更简单的方式,简直简单得令人发指。好吧,废话不多说,先上效果图:图片拿慕课网的,viewpa原创 2017-05-05 08:43:25 · 9007 阅读 · 2 评论