2016年4月18日
摘要: PopupWindow 类位于android.widget 包下,API注释为: PopupWindow 是一个浮于当前activity之上、用于显示任意 view 的容器。 使用PopupWindow 的大致步骤: 首先需要创建一个PopupWindow 对象,可以使用的构造函数有 其中,cont 阅读全文
posted @ 2016-04-18 14:13 快乐的码农 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 有时候,需要根据服务器返回的json数据动态的加载界面,如: 服务器返回的结果如: 相应的JavaBean: public class DoctTitle { public int code; public String errors; public String message; public L 阅读全文
posted @ 2016-04-18 13:54 快乐的码农 阅读(1144) 评论(0) 推荐(0) 编辑
摘要: 本篇文章是之前的两篇博文:模仿网易邮箱的滑动删除 和 Android - 下拉刷新 的总结,本篇文章在前两篇文章的基础上,对滑动删除进行了一定的优化,并且解决了下拉刷新和滑动删除的冲突,当然,这只是实际工作中写的一个demo,仅为实现主要功能。 以下是除图片资源之外的所有内容,首先是Demo结构图: 阅读全文
posted @ 2016-04-18 13:43 快乐的码农 阅读(953) 评论(0) 推荐(0) 编辑
摘要: JSON是JavaScript Object Notation的缩写,是一系列键值对的集合。 以下几张截图来源于网络: (感谢李志敏老师) 对于json类型的数据有两种较常用的场景: 1、将数据转换成json字符串 2、将json字符串解析成javaBean 其中,最常用的是JSONObject,  阅读全文
posted @ 2016-04-18 13:31 快乐的码农 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 滑动删除,一个很常见的功能,本文用几种方式模仿网易邮箱的滑动删除。 第一种、使用HorizontalScrollView 这种方式,重点有两个地方,一个是listview的item的布局,另一个是listview对应的adapter,相关代码如下(仅为实现功能): HwgtSlidingDelete 阅读全文
posted @ 2016-04-18 12:41 快乐的码农 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 在android中,下拉刷新是很常用的功能,关于它的实现原理,网上有很多文章都可以参考,不再详写,本文主要记录我在学习过程中遇到的问题及其解决方案。 主要的类就一个,即自定义的ListView,而在这个类中,比较难的是对MOVE事件的处理。如果MOVE事件处理不好的话,会出现很多影响用户体验的问题, 阅读全文
posted @ 2016-04-18 12:38 快乐的码农 阅读(254) 评论(0) 推荐(0) 编辑
摘要: android事件分发机制的学习告一段落,先写篇文章做个总结,如有新的认识,后续再进行补充。 首先从两个问题引出android 的事件分发机制: 如下图,绿色部分A代表应用的一个填充父窗体的view对象,B 是 A 的子view,C 是 B 的子view,D 又是 C 的子view。 1、如果我们点 阅读全文
posted @ 2016-04-18 12:03 快乐的码农 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 在Android - View的绘制流程一(measure)一文中提到,view绘制的核心逻辑都在ViewRoot的performTraversals()方法中,主要分为三个阶段: 第一个阶段是measure,第二个阶段是layout,第三个阶段是draw ViewRoot类的performTrav 阅读全文
posted @ 2016-04-18 11:46 快乐的码农 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 该博文所用的demo结构图: 对应的代码: MainActivity.java: public class MainActivity extends Activity { private int desiredWindowWidth; private int desiredWindowHeight; 阅读全文
posted @ 2016-04-18 11:26 快乐的码农 阅读(339) 评论(0) 推荐(0) 编辑
摘要: android 应用程序中,一般都会发生activity的跳转和返回键的点击操作,而这就会涉及到activity启动模式的问题。 1、启动一个应用,系统就会创建一个Task用来存放主activity。每个Activity都有一个taskAffinity属性,这个属性定义了用来存放它的Task,如果一 阅读全文
posted @ 2016-04-18 11:08 快乐的码农 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 第一次看这本书,是在两年以前了,最近又看了一遍,发现好多东西已经忘记了,另外,在最近两年的工作中,有些很有用的命令我居然一次都没用过, 所以,为以后查阅方便和更有效率的工作,写一篇笔记吧。 一、概述 版本库和工作目录树: 1、使用Git相关命令初始化版本库,即生成“.git”目录,于是,“.git” 阅读全文
posted @ 2016-04-18 11:01 快乐的码农 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 在写listview的下拉刷新和上拉加载时,会遇到如下问题: 怎样判断listview滑动到了顶部或是底部? 下拉刷新时,一般只有当第一个item完全可见时,才处理下拉的逻辑,而上拉加载则处理方式比较多,可以在手指已经离开屏幕但listview由于惯性作用滑动到底部时自动加载,也可以在最底部显示一个 阅读全文
posted @ 2016-04-18 10:47 快乐的码农 阅读(5467) 评论(0) 推荐(0) 编辑
摘要: Bitmap是Android中处理图片的一个重要的类。用它可以获取图片信息,进行图片剪切、平移、旋转、缩放等操作,并可以指定格式保存图片文件。 一、 Bitmap对象的获取 获取Bitmap主要依靠BitmapFactory类,其API注释为:Creates Bitmap objects from 阅读全文
posted @ 2016-04-18 10:37 快乐的码农 阅读(5785) 评论(0) 推荐(0) 编辑
摘要: 有时候应用程序需要保存一些数据,有如下选择: 1、保存到SD卡,有两种方式: a、在SD卡的根目录下创建一个文件夹,用于保存数据, b、获取SDCard/Android/data/你的应用的包名/...目录,将数据保存在里边。 首先看a方式,这会使用到Environment 类,En... 阅读全文
posted @ 2016-04-18 10:17 快乐的码农 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 本文主要参考这篇文章和任玉刚的《android开发艺术探索》一书,谢谢两位作者! 7个方法简单描述如下: 1、onCreate:Activity被创建时调用 2、onStart:Activity已经可见,但还未获得焦点,还不能和用户进行交互 3、onResume:Activity已经获得焦点,可以和 阅读全文
posted @ 2016-04-18 10:04 快乐的码农 阅读(305) 评论(0) 推荐(0) 编辑