Android
A_xun_A
Android开发者,注重用户体验
展开
-
Android自定义View--垂直ViewPager加跑马灯
背景 不多说,直接看此图。 关键技术 ViewPager有个setPageTransformer方法可以设置页面切换时的动画:public void setPageTransformer(boolean reverseDrawingOrder, PageTransformer transformer)/** * 自定义Pager切换模式 */class DefaultTransform原创 2016-10-21 16:37:06 · 895 阅读 · 0 评论 -
Android开发中需要注意的坑
背景 此文纯粹总结开发Android以来遇到的一些坑,一来为了防止再次掉坑,二来是希望后面的朋友能躲开这些坑。另外还编写了《 Android开发中常犯的错误》。原创 2016-09-30 11:06:34 · 1202 阅读 · 0 评论 -
Android,什么是MVP模式?
梗概 MVP模式是MVC模式在Android上的一种变体,在MVC模式中,Activity应该是属于View这一层,它既承担了View,同时也包含了一些Controller的东西在里面,这对于开发与维护来说不太友好,耦合度太高。把Activity的View和Controller抽离出来就变成了View和Presenter,这就是MVP模式。先熟悉一下MVC模式 M层:适合做一些业务逻辑处理...原创 2018-07-02 14:31:38 · 1304 阅读 · 0 评论 -
Android性能优化之布局优化
参考《Android性能优化之布局优化》 侵删绘制的原理Android需要把XML布局文件转换成GPU能够识别并绘制的对象。这个操作是在DisplayList的帮助下完成的。DisplayList持有所有将要交给GPU绘制到屏幕上的数据信息。CPU负责把UI组件计算成Polygons,Texture纹理,然后交给GPU进行栅格化渲染。GPU进行栅格化渲染。硬件展示在屏幕上。为...转载 2018-07-11 11:03:03 · 218 阅读 · 0 评论 -
Android性能优化之内存优化
背景最近手上一个项目,类似于订单系统,通过Android Profiler工具观察发现,重复打开关闭订单详情,会导致内存占用不断攀升,最后会导致APP操作变慢,甚至内存溢出而崩溃,急需要找出原因。初步猜测是一些代码导致对象在堆中暂用内存单元无法被释放,造成内存泄露。网上查查,哪些容易忽略的情况会导致内存泄露。 参考《Android内存优化——常见内存泄露及优化方案》 侵删单例导致内存泄露...原创 2018-07-11 22:41:46 · 202 阅读 · 0 评论 -
Android的Handler
背景知其然要知其所以然,为什么会有Handler的出现?举个例子,假设我们在一个Thread中直接刷新某个TextView,并且每毫秒就刷新一次,那么TextView的绘制会疯掉,而且用户体验也不好。所以为了控制UI的刷新频率,Android规定非UI线程不能直接控制UI组件,只能通过Handler来处理。概念解析非UI线程计算出结果后,将结果封装到Message里,调用Handler...原创 2018-07-12 17:42:15 · 260 阅读 · 0 评论 -
2016 TOP 10 ANDROID LIBRARY
原文地址:http://stormzhang.com/2017/01/16/top-10-android-library-of-2016/原文来自帅B张!关注他有一年多了,学习很多,也希望各位学习Android的朋友关注他,感谢他一年以来的指导,在此贴下他的公众号: RxJava地址:https://github.com/ReactiveX/RxJava2016 年 Android 界最火的莫过于转载 2017-01-17 21:51:49 · 389 阅读 · 0 评论 -
Java基础--Android中泛型的应用(二)
背景 上一篇《 Java基础–Android中泛型的应用(一)》介绍了泛型在Android开发中的应用,致使减少了代码的冗余量,这里来介绍一下Google的Gson对泛型实体类的解析的问题。这也得益于怪盗kidou 关于《你真的会用Gson吗?》的文章。原创 2016-10-23 11:28:37 · 1255 阅读 · 1 评论 -
Java基础--Android中泛型的应用(一)
背景 之前我们知道泛型在Java中意味着什么特性,但貌似在项目中很少应用到它,如果应用恰当,能够减少许多冗余的代码,也能让你的代码变得更加安全。原创 2016-10-20 15:33:33 · 2772 阅读 · 0 评论 -
微信分享,图标背景黑色问题解决
背景 在做微信分享,分享带图标的链接时,并没有达到我们想要的效果,图标背景是黑色的,如下两张图。 而我们要的效果是这样的: 下来我们想办法给该图标背面加一层白色背景。 XML方法解决 这里用到了Drawable Resources 里的layer list知识。 res/drawable/layer_icon.xml<?xml version="1.0" encoding="ut原创 2016-10-12 17:03:28 · 18194 阅读 · 1 评论 -
Android本地存储目录研究
背景 所有Android设备都有两个文件存储区域:内部存储和外部存储尽管app默认安装在内部存储中,但可以在manifest文件中指定 android:installLocation 的属性,这样app便可安装在在外部存储中。当 APK 非常大且它们的外部存储空间大于内部存储时,用户更青睐这个选择。本篇文章针对的三星手机的目录,其他厂商的手机可能略有不同,请注意。原创 2016-10-24 10:57:57 · 861 阅读 · 0 评论 -
Android自定义View--定义属性
很多时候,我们的App里面存在一些重复使用的布局,每次都需要使用大量xml代码去布局,特别是遇到要整体修改的时候,那就得一个一个去修改,即使使用了通用的style,也会有大量要修改的情况。所以我们可以使用自定义View来解决此问题。原创 2016-09-29 17:45:28 · 415 阅读 · 0 评论 -
Android自定义View--加载动画
背景 一直觉得Android系统自带的加载动画过于简单,看久了容易产生视觉疲劳,所以有时候有必要定义一些有趣的动画;也因为平时我们开发时多集中在业务与性能上的处理,对动画这一块使用得比较少;下面就来介绍一个加载动画代码的编写。最终效果如下: 技术介绍 目前Android里有三种动画模式,分别是property animation,view animation,drawable animatio原创 2016-09-30 10:32:05 · 591 阅读 · 0 评论 -
使用Intent传递对象的好处
背景 在某些情况下,我们需要使用到Intent去传递一个自定义对象,这样能够减少许多不必要的代码。查阅一下,传递的对象类需要实现Serializable接口或Parcelable接口,下面我们来介绍一下如何选择,及如何传递。Serializable与Parcelable的选择 Serializable是JavaSE本身就支持的,Parcelable是Android特有功能,效率比实现Serial原创 2016-10-19 16:02:34 · 537 阅读 · 0 评论 -
Android Drawable--Shape
继上一篇《Android Drawable Resources》,这里来分析shape的使用,值得注意的是此shape可以作为之前各Drawable里item的元素,所以可以让Drawable Resources更加多变。原创 2016-10-12 18:32:40 · 441 阅读 · 0 评论 -
Android Drawable--总览
背景 App很多页面都要显示一些图标,我们也经常使用@drawable直接引用图标,但是Android提供更多对drawable进行定义的方式,让显示更加多样化,下面将一一对这些技术进行介绍。总览 绘图资源(Drawable Resources)是一种让Graphic绘制到屏幕的资源,在Android中能通过getDrawable(int)获取该资源,又或者通过@drawable获取,这些资源包原创 2016-10-11 14:52:23 · 332 阅读 · 0 评论 -
Activity切换动画效果
背景 参考网易新闻,打开新页面时,是从右侧切换过来,关闭时是切换回右侧。网上有很多方法,但是使用后都感觉不满意,决定自己写一个。原创 2016-11-02 15:54:32 · 297 阅读 · 0 评论 -
Android 相机或相册选择图片裁剪
背景 这是一个我们经常使用的功能,比如上传头像、身份证,本功能可选择相机或相册图片后,进入裁剪页面,并可返回Bitmap格式的图片。原创 2016-11-02 15:42:43 · 592 阅读 · 0 评论 -
真正解决App启动时白屏/黑屏
背景 过去点击App图标时,App启动时总会出现短暂的白屏/黑屏,这是一个非常不好的体验,下来我们就一起来解决这个问题。原创 2016-11-24 17:47:59 · 1388 阅读 · 0 评论 -
Android ScrollView的各种适配
背景 这里是为了解决在ScrollView包裹下,出现的各种奇葩问题。原创 2017-01-05 16:25:05 · 904 阅读 · 0 评论 -
常用的优秀开源项目
背景 这里会收集很多常用的开源项目,防止自己忘记,也给大家做个参考。咱不说使用方法,各位可以到去搜搜,一搜一大把。原创 2017-01-09 14:48:02 · 403 阅读 · 0 评论 -
Android的多进程
前言上次面试被问到多进程的知识,回答不上来,真的感觉很羞耻。以下内容很多来自参考文章,侵删。一、什么情况下要用到多进程参考《Android多进程使用场景》,感谢。 常驻后台任务应用:类似音乐类、跑步健身类、手机管家类等长时间需要在后台运行的应用。这些应用的特点就是,当用户切到别的应用,或者关掉手机屏幕的时候,应用本身的核心模块还在正常运行,提供服务。如果因为手机内存过低,或者是进程重...原创 2018-07-30 16:58:56 · 401 阅读 · 0 评论