摘要:
PopupWindow 是一个可以显示在当前 Activity 之上的浮动容器,PopupWindow 弹出的位置是能够改变的,按照有无偏移量,可以分为无偏移和有偏移两种;按照参照对象的不同又可以分为两种:相对某个控件(Anchor 锚点)的位置和在父容器内部的相对位置。PopupWindow 的实现效果如下:PopupWindow 的实现代码如下:创建 PopupWindowLayoutInflater mLayoutInflater = (LayoutInflater) context.getSystemService(LAYOUT_INFLATER_SERVICE);View conte 阅读全文
摘要:
1. ListView item 中加入 Checkbox 后 onListItemClick 事件无法触发。原因:Checkbox 获取焦点的优先级高于 ListItem,于是屏蔽了 ListItem 的点击事件。解决方案:设置 CheckBox 的属性 android:clickable="false" android:focusable="false"<CheckBox android:layout_width="wrap_content" android:layout_height="wrap_content& 阅读全文
摘要:
Linux 系统下所有的信息都是以文件的形式存在的,所以应用程序的流量信息也会被保存在操作系统的文件中。Android 2.2 版本以前的系统的流量信息都存放在 proc/net/dev(或者 proc/self/net/dev)文件下,读取文件然后对其进行解析就行了。读取某一个应用的流量,则读取proc/uid_stat/uid /tcp_rcv 文件进行解析(注:模拟器下不存在这个目录)。如需查看某个应用的流量信息,可以通过以下命令来实现: adb devices 列出所有设备 adb -s 设备名称 shell ... 阅读全文
摘要:
在实际开发中从美工手中获取的控件或布局长度有时为 px 值,这时就需要我们将 px 值转换为对应的 dp 或者 dip 值,如下的转换工具类提供了将 px 值转换为 dp 值的方法。package cn.sunzn.utils;import android.content.Context;public class CommonUtil { /** * 根据手机分辨率从 dp 转为 px * * @param context * @param dpValue * @return */ public static int dip2px(... 阅读全文
摘要:
Drawable Animation 可以让我们按顺序加载一系列的资源来创建一个动画。动画的创建和传统意义上电影胶卷的播放一样,是通过加载不同的图片,然后按顺序进行播放来实现的。在代 码的实现上 AnimationDrawable 类是基于 Drawable animations 来实现的。虽然我们可以通过 AnimationDrawable 类的 API 在代码中定义一个动画的所有帧,但通过一个包含所有帧的 XMl 文件来完成一个动画会更加的简单。这个 XML 文件应该被创建在 Android 项目的 /res/drawable/ 目录下,这样动画内的每一帧就会按照顺序和固定的时间间隔来播放 阅读全文
摘要:
SQLite 因其小巧轻便被安卓系统广泛采用,当然在操作小数据量时,差异并不明显;但当 SQLite 在操作略大一点的数据时就显得力不存心了,这时的 CRUD 操作对移动存储设备的性能有着极大的要求,另外用户体验的良好性也对 SQLite 的性能优化提出了要求。那么,当我们在操作大数据量时如何对 SQLite 进行优化呢?正确的操作是:开启事务。下面我们通过采用不同的方式向数据库中插入 10000 条数据来进行比较以体现开启事务对 SQLite 性能提升方面所做出的贡献。首先看一张截图来进行一个感性的认识:源码及安装文件下载方式一:SQLiteDataBase.zip从上图中我们会很清晰的看到 阅读全文