自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 EditTextView.setError 引发的血案

先上图 如图文字和弹框对不起来,各种查资料各种测试,试了网上找到的任何方法,结合:无效! 最后想起AS里面有个谷歌的示例登录模块也用到了EditTextView.setError,新建之,一一对比排查,3个小时过去了,最后发现是主题的原因 不要设成下面这种的 <style name="AppTheme.NoActionBar" parent="AppTheme"> <item name="windowActionBar">false</item>

2020-09-03 15:37:27 217 1

原创 谈一谈recyclerView的正确刷新姿势

先说下有几种吧: 1.notifyDataSetChanged();全部刷新,就是不管3721,全部刷新一遍。 2.notifyItemChanged(position);之刷新指定的item。 3.notifyItemInserted(position);插入的时候刷新。 4.notifyItemRemoved(position);删除的时候刷新。 常用的就这几种,值得注意的是处理问题时不要简单粗暴的直接notifyDataSetChanged()去全部刷新,如果的的布局比较复杂,那效率是极低的

2020-06-18 17:07:43 598

原创 如何利用AS查看应用内部文件

App内部文件是受保护的,没有root权限的手机是不能用直接查看的,而开发过程中查看这些文件来验证程序的正确性是很必要的,那么除了去root手机还有别的办法查看这些文件吗?答案是肯定的。 我们可以利用As提供的工具将这些文件保存到电脑上再进行查看 注意事项:要查看数据库时需要工具,我用的是SQLite.Expert.Professional.5,我放到附件里去了,需要的同学可以下载,保存数据库的时候需要同时保存相关的三个文件下能正常查看哦(就是同名不同后缀的那三个,.db,.db-shm,.db-w

2020-06-15 10:20:17 1091

原创 java 集合中如何正确的移除符合条件的项

直接说重点: 1.不能直接用for循环+remove的方式,会报错。 2.推荐使用Iterator+remove的方式 Iterator<EntityNote> noteIterator = notes.iterator(); while (noteIterator.hasNext()) { EntityNote note = noteIterator.next(); if.

2020-06-11 17:29:49 338

原创 如何正确的创建文件

if (!resultFile.exists()) { try { // 先创建父级目录,不然存取别的账号下的文件时(拉取共享文件时)报错 File parentFile = resultFile.getParentFile(); if (parentFile.exists()) { .

2020-06-10 17:56:33 284

原创 ViewPage + Fragment + RecyclerView 需要注意的问题

1.使用 viewPager.setOffscreenPageLimit(4);来控制预加载页面的数量 2.建议使用第三方指示器库来做指示器,方便高度定制 implementation 'com.github.hackware1993:MagicIndicator:1.5.0' 3.当切换ViewPager时,RecyclerView自动总是自动滑动?原因及解决方法: RecyclerView的 focusableOnTouchMode属性默认是true,所以ViewPager切换时recyc

2020-06-10 16:10:28 303

原创 入门系列之安卓WebView与H5的交互

使用H5的利弊我相信大家都很了解了,这里是入门级的文章我还是说给新同学听一下: 优点:1.宽平台,android和IOS加载同一个H5文件效果是一样的;2.适合动态业务,不如说像商城类的APP可能常常要做促销活动,不同的活动需要不同的主题,用原生的组件是不好实现的,这时候H5的优势就体现出来了,只需要在后台修改H5文件就可以了。题外话:用原生的能不能实现?答案是能,阿里巴巴团队已经开源了自家的解...

2020-05-07 16:06:05 414

原创 如何为你的APP瘦身

随着安卓技术的发展,优秀的第三方库越来越多,看完需求我们往往先去查查有没有可用的开源库,但往往有一个问题,大多数情况下我们并不需要引入的第三方库的所有功能,换句话说我们可能为了解决一个小问题引入了大量的代码,后果就是最终打包的APK体积大得惊人,那么怎么解决呢? 方法有很多,我只介绍最简单常用的方法:代码混淆,是的你没看错,代码混淆除了可以防止反编译暴露技术细节外还可以优化代码,帮你剔除没用到的...

2020-03-14 21:06:14 174

原创 踩平Bugly在安卓9.0以上版本的坑

一款优良的app对于bug的收集是很重要的,即便是公司有专门的测试也不能保证发布后的应用零bug,毕竟也遇到过微信崩溃的情况,当应用崩溃时及时上报异常是必须的,我推荐使用腾讯bugly,免费集成过程和API都很简单,大家直接按官方文档来就好了,我需要补充的是当你运行在安卓9.0以上并且使用的是移动网络的时候会上报失败,调试信息提示“上传失败,请检查网络”,别的不多说了,下面我直接给出原因和解决方案...

2020-03-13 14:38:07 165

原创 官方App 架构指南的学习到实践

作为一名安卓应用开发者来说,构建出稳定、高效、合理、易维护的安卓App一直都是我们追求的目标。对此老大哥谷歌给我们做出了很好的指导。废话不多说,先来了解一下官方对构建一个高质量的APP提出的建议。 整体框架图 可以看出采用的是MVVM的构架模式,Repository及其分支是数据中心(Model),Activity/Fragment是(View),ViewModel就是图中...

2019-03-25 16:00:04 307

原创 安卓分页加载框架Paging+Dagger2的刷新问题

一直以来都在努力学习谷歌的Android Architecture Components框架,也下了官方的实例项目进行实际的调试。个人觉得直接去调试官方得代码是上手最快的方式,一顿操作之后就可以自己写一个项目来加强理解了,肯定会有很多“坑”,所以想写写文章记录一下。 Paging的刷新问题,先看看官方是怎么写的 就是调用DataSource类的invalidate()...

2019-03-15 12:45:00 445

原创 第一次写博文 谈谈自己遇到的Dagger2坑

         目前学习了谷歌最新框架和组件,重构自己做过的项目,采用MVVM框架,数据库用Room,其它的组件有ViewModel,databinding,用Dagger2来注入这些框架。全部是谷歌推荐的框架和组件,却遇坑无数。具体有哪些坑,如何解决,我下次详细说明,今天不早了,打卡下班了。...

2018-12-17 16:06:10 110

SQLite.Expert.Professional.5.rar

Windows 查看数据库工具,可以用来查看AS从手机里面导出来的数据库数据,需要注意的是要同时考出相关的三个文件才能正常显示数据。

2020-06-15

空空如也

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

TA关注的人

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