![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android应用
文章平均质量分 66
唯有喵不可辜负
这个作者很懒,什么都没留下…
展开
-
Handler&内部类导致的内存泄露问题
出处:http://www.cnblogs.com/kissazi2/p/4121852.html思考下面代码1 public class SampleActivity extends Activity {2 3 private final Handler mLeakyHandler = new Handler() {4 @Override5 public vo转载 2015-12-24 09:36:12 · 927 阅读 · 0 评论 -
Android AIDL用法解析
先说为什么要使用AIDL吧,根据官方文档的说明,“只有当你允许来自不同的客户端访问你的服务并且需要处理多线程问题时你才必须使用AIDL”,其他情况下你都可以选择其他方法,如使用Messager,也能跨进程通讯。可见AIDL是处理多线程、多客户端并发访问的。而Messager是单线程处理。 AIDL的使用上大体分三个步骤。 1 定义AIDL接口 2 服务端实现原创 2016-02-17 11:49:11 · 558 阅读 · 0 评论 -
android 开源项目集合
1、直接拿来用!最火的android项目集合:http://www.csdn.net/article/2013-05-03/2815127-Android-open-source-projects2、这位兄台整理的,绝对牛逼 http://www.eoeandroid.com/thread-311366-1-1.html 3、这个人整理的,转载 2016-01-13 10:55:15 · 249 阅读 · 0 评论 -
浅谈HTTP中Get与Post的区别
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。 1.根转载 2016-01-11 14:23:49 · 268 阅读 · 0 评论 -
Android照片墙完整版,完美结合LruCache和DiskLruCache
在上一篇文章当中,我们学习了DiskLruCache的概念和基本用法,但仅仅是掌握理论知识显然是不够的,那么本篇文章我们就来继续进阶一下,看一看在实战当中应该怎样合理使用DiskLruCache。还不熟悉DiskLruCache用法的朋友可以先去参考我的上一篇文章Android DiskLruCache完全解析,硬盘缓存的最佳方案 。其实,在真正的项目实战当中如果仅仅是使用硬盘缓存的话转载 2016-01-28 14:39:32 · 393 阅读 · 0 评论 -
Android多线程之java.lang.IllegalThreadStateException: Thread already started
我们都知道,实现多线程有两种方式,继承Thread和实现Runnable接口。由于Android只能单继承,却可以实现多接口,所以在实际开发中后者用的相对较多.但是最近在用实现runnable接口的时候,在一个按钮点击事件中启动线程,第一次点击ok,但是再次点击程序就会崩掉,log报异常java.lang.IllegalThreadStateException: Thread already原创 2015-12-22 10:12:57 · 2897 阅读 · 1 评论 -
Android应用之PreferenceFragment
最近在看Android源码Setting代码的时候,发现其中配置都是用的PreferenceFragment,以前对这一块不是很了解,查资料看了一下,感觉用起来好方便。 PreferenceFragment的界面也是写在一个XML文件中,不过不是放在layout目录下,需要自己在res下面新建一个xml命名的文件夹,然后在该文件夹下再新建一个xml文件,这个文件就是我们Pref原创 2015-12-19 15:53:31 · 649 阅读 · 0 评论 -
Android 通过点击EditText之外的地方隐藏软键盘
我们都知道当点击EditText的时候,会自动弹出软键盘,但是如何隐藏它呢? 现在大部分聊天软件,如微信之类的都有这个效果,感觉用户体验很不错,刚好最近有个项目要用到这个,查了些资料,这里也分享下。 先创建个工具类吧。public class HideSoftKeyboard { public static void hideSoftKeyboard(A原创 2015-12-18 11:07:48 · 1831 阅读 · 0 评论 -
Editext不弹出软键盘的方法
1 EditText默认不弹出软件键盘方法一:在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden例如: android:label="@string/app_name" androi原创 2015-12-16 13:01:03 · 1936 阅读 · 0 评论 -
Androidying应用之多线程机制Handler
说到多线程,这里先谈谈Android系统为何需要多线程。我们都知道,Android线程通常分两种,UI线程(Main Thread)和工作线程(Worker Thread)。Android规定,UI线程是不能做耗时操作的,否则会出现ANR错误,所以耗时操作都要放在work THread中进行。Android还有一个重要原则,不能在UI Thread之外的线程当中操纵我们的UI,所以一般更新UI操作原创 2015-12-14 17:07:28 · 424 阅读 · 0 评论 -
Android缓存处理
Android缓存:采用缓存,可以进一步大大缓解数据交互的压力,又能提供一定的离线浏览。下边我简略列举一下缓存管理的适用环境:1. 提供网络服务的应用2. 数据更新不需要实时更新,哪怕是3-5分钟的延迟也是可以采用缓存机制。3. 缓存的过期时间是可以接受的(类似网易的新闻阅读,支持离线离线阅读)这样所带来的好处:1. 减小服务器的压力2. 提高客户端的响应速度(本地数据转载 2016-01-16 11:08:34 · 371 阅读 · 0 评论 -
Android应用之PopupWindow显示位置详解
Android的弹出窗口一般都两种方式。AlertDialog和PopupWindow。这里重点介绍PopupWindow的显示位置。 Android为PopupWindow的显示位置提供了两种方法: 1 popupWindow相对父布局的位置 重载的方法为 public void showAtLocation(View pa原创 2015-12-29 14:03:07 · 17270 阅读 · 0 评论 -
Android应用之横竖屏切换时生命周期 onsaveinstancestate
Android设备在横竖屏切换时,会调用OnsavedInstanceState方法,我们来看看其生命周期的调用过程。写了个简单例子,通过log打印出生命周期的调用过程。不多说,上图大家一看就明白。下图是正常打开一个Activity的生命周期调用过程。下面是打开一个Activity然后由竖屏切换到横屏的生命周期调用过程。下面是打开一个Activity然后原创 2015-12-28 18:22:39 · 644 阅读 · 0 评论 -
Android Support Design 库 之 Snackbar使用及源码分析
在谷歌提出 material design 之后,终于推出了 android.support.design 这个官方的material design库,这几天我也简单浏览了下这个库,基本上我们常用的组件都有了,从今天开始,就可以一步步替换掉以前使用的github上的那些开源控件了,毕竟谷歌出品 才属精品~~另外分析这个design库的源码我认为是非常有意义的,android上的app 在以转载 2016-02-04 16:31:10 · 4215 阅读 · 4 评论