工欲善其事必先利其器,希望下面的工具类能对你有所帮助,目前比较少,会持续更新。 1.键盘工具类 KeyBoardUtils public class KeyBoardUtils { /** * 自动打开软键盘 * * @…
分类:移动开发
Bitmap的加载与Cache(一)
如何有效的加载一个bitmap,由于Bitmap的特殊性以及Android对单个应用所施加的内存限制,比如16MB,这就导致加载Bitmap的时候很容易出现内存溢出。 因此,如何高效的加载bitmap是一个很重要也很容易…
Android如何设置列表的最大高度或最多可见个数,超出则以滚动显示
最近在做开发的时候,遇到了这样的一个需求:有一个聊天的模板列表,要求使用弹框的样式展示,尽可能的做到高度自适应。于是我就开始了各种探索: 探索1>动态的的设置弹框的高度,发现无法准确的计算高度,不美观; 探索2&g…
Handler常见应用场景和常见问题分析
Handler应用场景 根据前几篇的分析,根据实际的开发,我们可以总结出以下Handler的使用场景 最简单的消息发送 主线程使用Handler, 主线程里或子线程里发送消息,或延迟发送消息的方式更新UI 如, 启动应用…
iOS UIBezierPath贝赛尔曲线详解
UIBezierPath是在画图,定制动画轨迹中都有应用。 UIBezierPath主要用来绘制矢量图形,它是基于Core Graphics对CGPathRef数据类型和path绘图属性的一个封装,所以是需要图形上下文的…
编辑距离 (Levenshtein Distance算法)
很久没有写算法了, 个人算法中等, 不好不坏. 觉的学习算法的好处很多, 还可以保持大脑活跃度, 因此最近会写些算法的博客. 这篇文章的算法是工作中用到的. 一个成熟的动态规划算法.介绍给大家. 编辑距离 (Levens…
18年底Android面经分享(已获头条、顺丰、OPPO等大厂offer)
前言 本人水平有限,此文针对于自认为技术实力对标阿里P6,百度T5或者以下的读者,如果是大佬不小心点进来了,可以自行点x略过。文内并不会出现每一家公司的面试过程细节,主要目的在于帮助大家怎么在像我一样菜的情况下在这寒冬拿…
nanohttpd开发
Android 应用内架设服务使用NanoHTTPD github地址点击打开链接找到releases下载相应jar包导入到Android studio 中,添加网络权限,创建类继承NanoHTTPD,重写serve方法…
Retrofit,Gson解析,请求返回的类型不统一,假如double返回的是null
打造终极MVP+Retrofit2+okhttp3+Rxjava2网络请求,开发实用,简约,由于篇幅字数原因 本章讲解服务器返回类型不统一而引发的解析失败问题,开发中可能会遇到实体类定义的是某种类型(如double,in…
android多线程之AsyncTask源码分析
在有关线程的操作中一定要记住两点: 1、不能在UI线程中执行耗时的操作 2、不能在非主线程中更新UI界面 一、AsyncTask简介 AsyncTask封装了线程池和Handler,是Android的一个轻量级的异步类,…
最全的BAT & Google等团队技术博客集合
【转载请注明原文出处,谢谢!https://www.jianshu.com/p/7646721c0fc1】 前言 本人对技术博客的内容很挑剔,历时半年,收集了国内外最知名最前沿的技术博客,有BAT、Google的团队博客…