![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android开发
文章平均质量分 94
Ever69
这个作者很懒,什么都没留下…
展开
-
RecyclerView的好朋友 — SnapHelpter
SnapHelpter,相信很多人可能都不知道它或者没怎么关注过它,但是通过它实现的效果肯定都见过。比如短视频应用中切换视频时一划划一页的效果,这可不是ViewPager实现的啊,使用ViewPager实现的话成本太高,所以这类效果都是通过RecyclerVIew + SnapHelper来实现的,拿刚才讲的短视频切换效果来说,使用的就是RecyclerVIew和SnapHelper的子类PagerSnapHelper来实现的。说了这些,那么SnapHelper到底是什么东西呢?见名思意,Snap,翻译成中原创 2022-07-04 17:56:03 · 511 阅读 · 0 评论 -
搞定Android Post请求缓存(不能缓存你顺着网线过来打我)!
Android App网络缓存实践为什么要做网络缓存?OkHttp的网络缓存OkHttp的限制如何实现Post缓存我的缓存方案如何识别需要缓存的接口为什么要做网络缓存?网络缓存可以提高接口的响应速度,节省服务器资源,因为有些数据比如用户信息之类的,很久都不会有什么修改,那么这种情况就没必要每次都从服务器拉取数据,完全可以使用本地的缓存,当用户信息有更新时,我们再将从服务器获取的数据覆盖本地缓存并使用。期次对于某些需要用来做界面展示的数据,当手机没有网络的时候可以使用其缓存快速展示给用户,避免界面出现空原创 2021-01-29 15:14:07 · 1062 阅读 · 6 评论 -
Android反射修改buildConfigField生成的属性失效问题
在开发的时候,我们经常需要在项目的build.gradle文件中通过buildConfigField方法在BuildConfig类中生成一些常量属性供项目运行使用,比如一些第三方SDK的id和key,或是根据打包环境或者渠道对应的接口服务器地址等等。现在问题来了,我们希望不止在打包时可以切换对应环境的接口服务器地址,在App运行时也可以切换,因为打包时的切换只算一种静态切换,它在编译时就已经将地址设定好了,如果想换一个地址,只能再从新打包,这在某些情况下就显得非常麻烦。所以我们需要在支持“静态切换”原创 2020-09-29 17:30:57 · 1591 阅读 · 0 评论 -
View设置setPivotX()、setPivotY()锚点无效原因
通常我们使用ObjectAnimator对View设置缩放或旋转动画时,需要对View设置动画锚点,也就是调用View的setPivotX()、setPivotY(),但是设置完后发现没有效果,这是为啥呢?相信很多人在调用上面两个方法时想当然的就把锚点的百分比当做参数传了进去(比如我),结果人家要的并不是百分比。。/*** @param pivotX The x location of the pivot point.*/public void setPivotX(float pivot原创 2020-08-21 16:19:33 · 1754 阅读 · 0 评论 -
完美解决Android中的ScrollView嵌套ListView滑动冲突问题
之前写了怎么解决ScrollView嵌套ScrollView滑动冲突的问题,因为这种不同嵌套所造成的滑动冲突本质上是一样的问题和原因,解决思路也都相同,唯一的具体差别就差在判断条件上,故此贴之上代码,想看问题原因和解决思路的可以查看这篇文章——解决Android中ScrollView嵌套ScrollView滑动冲突问题public class MyScrollListView extends...原创 2020-02-16 15:25:31 · 891 阅读 · 0 评论 -
完美解决Android中的ScrollView嵌套ScrollView滑动冲突问题
疫情期间闲在家中实在是无聊,游戏也提不起兴趣,一天天除了吃就是睡,哪儿也去不了,本以为自己挺宅的,没想到疫情让我从新认识了自己,原来自己也是有一颗向往自由的心啊!突然就理解了那些长期被关在家中盼望出去撒泼的狗子是一种怎样的心情了!罢了罢了,抱着想起电脑中留有不少以前写的Demo,看看能不能捡个出来写(shui)篇博客的想法,于是就产生了这篇文章。滑动冲突在Android中是一个比较常见...原创 2020-02-14 22:24:53 · 5541 阅读 · 10 评论 -
环信3.0自定义扩展消息
最近公司项目需要用到环信,早就听说过环信文档写的比较坑,继承过后才发现哪里是坑,简直是无底洞。。。项目需求是这样的,菜单中有一个房源按钮,点击后弹出房源信息列表,点击列表中的Item将此条Item的概括信息发送个对方。目前环信的消息类型有文本、图片、地理位置、语音视频、红包,提供的已经很全面了,可是我需要像京东、今日头条分享好友似的那种消息类型。所以我们以文本消息为基础,在它上面进行我们的自定...原创 2017-12-06 16:31:33 · 3151 阅读 · 2 评论 -
环信3.0添加聊天表情包
前言最近公司项目集成环信sdk,记录一下集成过程中的各种问题。如果说现在人与人之间最有效的沟通方式是什么,当然是表情包啊,一套不行就两套,两套不行就十套。本片博客就记录一下环信如何添加表情包。正文本次的内容并不算复杂,我是参照了环信Demo中添加兔斯基表情包的代码实现添加自己的表情包的。1.首先在环信demo中找到EmojiconExampleGroupData这个类,copy...原创 2017-12-08 15:46:54 · 2523 阅读 · 5 评论 -
解决在onCreate()过程中获取View的width和Height为0的4种方法
转载自:http://www.cnblogs.com/kissazi2/p/4133927.html很经常当我们动态创建某些View时,需要通过获取他们的width和height来确定别的view的布局,但是在onCreate()获取view的width和height会得到0.view.getWidth()和view.getHeight()为0的根本原因是控件还没有完成绘制,你必须等待系统将绘...转载 2018-02-08 14:21:52 · 268 阅读 · 0 评论 -
ScrollView嵌套百度地图MapView导致滑动冲突
项目中经常遇到ScrollView嵌套百度地图MapView,这时滑动百度地图时会发现水平左右方向可以滑动,上下滑动的时候就会发生冲突导致整个ScrollView一起滑动。<ScrollViewandroid:layout_width="match_parent"android:layout_height="match_parent"android:scrollbars="non...原创 2018-03-09 15:13:15 · 2461 阅读 · 1 评论 -
使用Retrofit2+RxJava2实现Android App自动更新
功能解析自动更新可以说已经是App的标配了,很多第三方平台也都支持这个功能,最近手头上的项目需要加入这个App自动更新,考虑到项目里有用到Retrofit2和RxJava2,于是打算使用它俩自己实现这个功能。分析App自动更新,可以分为以下三个功能点:1.APK文件的下载2.下载进度的实时更新显示3.下载完成后的自动安装其中比较难的一点是下载进度的实时更新显示,更难的是如何优雅...原创 2018-05-07 17:30:46 · 2574 阅读 · 6 评论 -
Android使用百度地图进行定位和路径规划(小白必看,踩坑之作)
项目中集成的百度地图需要使用到路径规划这个功能,并且可以跳转第三方地图软件进行导航。调用第三方地图进行导航另一篇文章有写,这篇文章主要记录一下使用路径规划中遇到的坑。前言百度路径规划开发文档:http://lbsyun.baidu.com/index.php?title=androidsdk/guide/route/drive要使用百度地图路径规划前,先确保下载百度地图SDK时勾选了检...原创 2018-09-15 17:49:13 · 3825 阅读 · 0 评论 -
Android net::ERR_CLEARTEXT_NOT_PERMITTED无法加载url
为保证用户数据和设备的安全,Google针对 Android P版本以后的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的连接,因此运行 Android P 系统的安卓设备无论是接收或者发送流量,都不能进行明码传输,需要使用新一代传输层安全协议(Transport Layer Security),而 Android P以下版本不受影响。因此在A...原创 2019-03-03 11:48:03 · 15065 阅读 · 2 评论 -
Kotlin项目报错:Please selcet Android SDK
当Kotlin项目报错Please selcet Android SDK,并且你的SDK已经配置过时,打开项目目录中 app.iml 文件,找到这一句配置<orderEntry type="jdk" jdkName="Kotlin SDK" jdkType="KotlinSDK" /> 替换为<orderEntry type="jdk" jdkName="An...原创 2019-03-20 11:00:25 · 284 阅读 · 0 评论 -
WebView加载网页空白问题
开发项目的时候WebView加载某些网页会出现空白的情况,但并不是所有手机都是空白,有些手机还是可以正常加载网页,自己梳理了一下,发现加载出现空白的手机系统都是8.0以下的,并且是H5网页。所以针对8.0以下的系统需要对WebView进行一些设置webView.settings.apply { cacheMode = WebSettings.LOAD_CACHE_EL...原创 2019-05-16 16:24:28 · 2110 阅读 · 1 评论