自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 如何“任性”使用Android的drawText()

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-03-04 22:13:42 520

原创 如何在Android Studio中使用Gradle发布项目至Jcenter仓库

简述目前非常流行将开源库上传至Jcenter仓库中,使用起来非常方便且易于维护,特别是在Android Studio环境中,只需几步配置就可以轻松实现上传和发布。Library的转换和引用博主的一个开源项目CustomSwipeListview之前是在Ecplise环境下进行开发且把控件代码和Demo写在了一个Project中,所以在发布开源库前首先是将原项目中的Demo代码提取出来单独新建

2015-03-02 16:43:38 705

原创 再次探究Android ListView缓存机制

概述虽然现在5.0后Google推出了RecycleView,但在5.0 Lollipop普及前Listview仍会被广泛使用,所以打算再次探究一下Listview的源码,了解一下Listview 的构成及加载机制。探究上图简单梳理了Listview的构成及与其相关类之间的关系,并简要地列出了些重要的方法和内部类。AdapterView从上图可以清晰的看出Listview归根究底是继承自

2015-03-02 16:43:34 246

原创 HashMap在Android和Java中的不同实现

起因今天在项目中遇到一个很"奇葩"的问题。情况大致是这样的:Android终端和服务器(Spring),完全相同的字符串键值对放入HashMap中竟然顺序不一样,这直接导致了服务器和Android终端用HmacSHA256算法加密出的摘要也不一样,服务器也就无法进行正确的数据验证。然后带着郁闷的心情给程序加断点进行原因寻找,发现原来是HashMap的中服务器和终端双方对于同样的key存放顺序竟

2015-03-02 16:43:30 254

原创 菜鸟程序员自我修养心得

题记一个菜鸟码农,初入职场,涉世未深,但感触颇多,或许这是菜鸟们的通病把,毕竟现实和理想是有差距的。不放弃或许是被繁琐的工作折腾的已精力殆尽,或许是寒冬已来,人自然就懒了,每每回家都很累,念想最多的就是想玩把游戏,休息休息,看一部电影等等,但是我知道不能总这样,因为日复一日,年复一年很可能这就会变成你的一个习惯,要知道习惯这个东西是很可怕的,其他的行业我不知道,但程序员是需要不断给自己充电

2015-03-02 16:43:25 390

原创 探究ListView 的缓存机制

概述ListView 是继承AbListView,AbListView是所有列表类控件的基类。ListView的数据加载在ListView数据加载中最关键的一个函数就是makeAndAddView(),这个函数的作用就获得一个ChildView并把该ChildView添加到List中,具体见源码分析:private View makeAndAddView(int position, int

2015-03-02 16:43:21 321

原创 看源码之Adapter和AdapterView之间的关系

总述Android中“列表”的实现其实一个典型的MVC模式,其实中AdapterView相当于是View,负责视图的绘制以及视图的事件响应,Adapter相当于是Controller,负责控制数据的显示内容和展现方式,另外项目中的实体类则是代表了Model。AdapterAdapter其实是个接口,并不是一个具体的类。它的主要最用就是作为一个AdapterView和Model间的桥梁,这一点

2015-03-02 16:43:16 387

原创 探究Android中Listview显示错乱问题

问题最近在项目中遇到过一个很棘手的问题,就是ListView在滑动后就莫名其妙的显示错乱,网上查阅资料后问题很容易的就解决了,但是对于问题产生的原因仍是一知半解,所以不甘心的我定下心来,狠读源码,终于理清了其中的”奥秘“。由来一般的关于Adapter中getView的写法不外乎以下形式:@Overridepublic View getView(int position, View con

2015-03-02 16:43:12 284

原创 感性体验 Android 5.0 Lollipop

引言Android5.0大概是在11月下旬开始进行OTA推送,博主手上的这台五太子(Nexus 5)也在前几天收到了Google的推送,博主当然是按耐不住赶紧FQ升级啦,但无奈的是这个大版本更新包有500M,足足更了好几个小时后才成功(过程中那个忐忑啊,怕出意外-。-),最后总算是有惊无险的更新完成,下面就简单说说Android5.0的实际使用感受。--- ---设计风格这个5.0的Mate

2015-03-02 16:43:08 444

原创 Java多线程中易混淆的概念

概述最近在看《ThinKing In Java》,看到多线程章节时觉得有一些概念比较容易混淆有必要总结一下,虽然都不是新的东西,不过还是蛮重要,很基本的,在开发或阅读源码中经常会遇到,在这里就简单的做个总结。1.volatilevolatile主要是用来在多线程中同步变量。在一般情况下,为了提升性能,每个线程在运行时都会将主内存中的变量保存一份在自己的内存中作为变量副本,但是这样就很容易出现

2015-03-02 16:43:03 336

原创 探究Android SQLite3多线程

最近做项目时在多线程读写数据库时抛出了异常,这自然是我对SQlite3有理解不到位的地方,所以事后仔细探究了一番。关于getWriteableDataBase()和getReadableDatabase()的真正作用 getWriteableDataBase()其实是相当于getReadableDatabase()的一个子方法,getWriteableDataBase()是只能返回一个以读写方

2015-03-02 16:42:59 245

原创 浅谈Android序列化

序列化原因序列化的原因基本可以归纳为以下三种情况:永久性保存对象,保存对象的字节序列到本地文件中;对象在网络中传递;对象在IPC间传递。 --- ---序列化方法在Android系统中关于序列化的方法一般有两种,分别是实现Serializable接口和Parcelable接口,其中Serializable接口是来自Java中的序列化接口,而Parcelable是Android自带的序

2015-03-02 16:42:54 296

原创 Android之Activity生命周期简介

概述有图有真相,所以先上图:上图是从Android官网截下的Activity的生命周期流程图,结构非常清晰,它描述了Activity在其生命周期中所有可能发生的情况以及发生的先后顺序,下面就将结合此图详细介绍一下Activity的生命周期。--- ---Activity四大基本状态Activity生命周期一般分为四个基本状态,分别是活动状态(running),暂停状态(paused),停

2015-03-02 16:42:50 316

原创 Java 中类的加载顺序

这其实是去年校招时我遇到的一道阿里巴巴的笔试题(承认有点久远了-。-),嗯,如果我没记错的话,当时是作为Java方向的一道选做大题。当然题意没有这么直白,题目只要求你写出程序运行后所有System.out.println的输出结果,其中程序是题目给的,而各个System.out.println的执行顺序不同会导致最后程序输出的结果也不同。具体的题目我肯定记不清,不过我们可以换个直接的问法,如果类

2015-03-02 16:42:45 216

原创 Django如何设置proxy

设置porxy的原因一般情况下我们代理设置是针对与浏览器而言,通常只需在浏览器设置中进行配置,但它只针对浏览器有效,对我们自己编写的程序并任何效果,这时就需要我们在软件编码中加入代理设置。--- ---Django的代理设置使用Python访问网页一般有三种常用的方式,分别是urllib,urllib2和httplib。其中urllib比较简单,功能相对也比较弱。而httplib简单强大,但

2015-03-02 16:42:42 750

空空如也

空空如也

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

TA关注的人

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