- 博客(30)
- 资源 (14)
- 收藏
- 关注
转载 Android中Matrix的pre post set方法理解
Matrix主要用于对平面进行缩放,平移,旋转以及倾斜操作,为简化矩阵变换,Android封装了一系列方法来进行矩阵变换,其中包括pre系列方法:preScale,preTranslate,preRotate,preSkew,set系列方法:setScale,setTranslate,setRotate,setSkew,post系列方法:postScale,postTranslate,postRo
2014-11-27 15:13:44
686
转载 android垃圾回收
GC_EXTERNAL_ALLOC freed 361K, 54% free 2617K/5575K, external 2114K/2137K, paused 169msGC_EXPLICIT freed 54K, 49% free 2968K/5767K, external 4695K/5802K, paused 76ms前面Free的内存是VM中java使用的内存,external是
2013-11-21 17:07:56
1633
转载 对Canvas和Matrix的理解
弄明白matrix那几个方法的使用了,比如preTranslate, setTranslate, postTranslate这些。以前对它们都是一知半解,以为这几个方法没什么区别,其实还是有很大不同的,最紧要是这几个方法的调用顺序对坐标变换的影响。抽象的说pre方法是向前"生长", post方法是向后"生长",具体拿个例子来说,比如一个matrix调用了下列一系列的方法: matr
2013-07-12 15:30:15
838
转载 Activity的taskAffinity属性
转载:http://www.2cto.com/kf/201107/96815.htmlActivity的归属,也就是Activity应该在哪个Task中,Activity与Task的吸附关系。我们知道,一般情况下在同一个应用中,启动的Activity都在同一个Task中,它们在该Task中度过自己的生命周期,这些Activity是从一而终的好榜样。 那么为什么我们创建的A
2013-01-10 19:54:46
1207
转载 Activity的LaunchMode和taskAffinity
设置Activity的LaunchMode属性可以决定这个Activity是和当前Task保持关联,还是说每次运行这个Activity是新建一个实例,还是保持单例。 Task和Back Stack简介 task是一组Activities的集合,一组Activities被Stack(back stack)所管理。 在一个应用中,有3个activities,分别是acti
2013-01-10 18:39:19
7475
转载 Android GC机制及一些调试信息
在Davilk中,给程序分配的内存是根据机型厂商的不同而不同(现在大部分为32MB) 在VM内部会将内存分为:java使用的内存,Native使用的内存,他们之间不能共享,当某一方面不足的时候必须向VM申请,而不能直接使用另外一个的内存。 android GC if you wanna a concrete example ,p
2013-01-10 15:43:24
9586
转载 android 设定activity的进入和退出效果
看了android的源代码和资源文件,终于明白如何去修改设置Dialog和Activity的进入和退出效果了。设置Dialog首先通过getWindow()方法获取它的窗口,然后通过getAttributes()方法获得window的WindowManager.LayoutParams lp, lp有个公共属性windowAnimations, 只要把要实现的animation的id赋值给它就
2012-11-06 20:27:44
713
转载 常用的android提示对话框
我们在平时做开发的时候,免不了会用到各种各样的对话框,相信有过其他平台开发经验的朋友都会知道,大部分的平台都只提供了几个最简单的实现,如果我们想实现自己特定需求的对话框,大家可能首先会想到,通过继承等方式,重写我们自己的对话框。当然,这也是不失为一个不错的解决方式,但是一般的情况却是这样,我们重写的对话框,也许只在一个特定的地方会用到,为了这一次的使用,而去创建一个新类,往往有点杀鸡用牛刀的感觉,
2012-11-06 20:26:24
620
转载 一篇不错的讲解Java异常的文章(转载)
六种异常处理的陋习你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗? 1 OutputStreamWriter out = ... 2 java.sql.Connection conn = ... 3 try { // ⑸ 4 Statement stat = c
2012-10-15 16:41:37
1041
转载 内存调试的东西D/dalvikvm( 809 ): GC_CONCURRENT freed
GC_CONCURRENT 错误:当分配的对象大小超过384K时触发java回收机制,自动回收内容,联网下载的内容在内存中达到这个数时自动清理内存,无限重复下载然后删除的动作,所以这个错误导致虚拟机无法正常的链接网络。(注:往往这个错误在实体机上不会发生)以下是原帖内容:老是看到LOG日志里有些系
2012-09-26 20:56:17
3030
转载 分享45个android实例源码,很好很强大.收藏吧!!!
安卓巴士源码分享好东西大家分享学习分享45个android实例源码,很好很强大http://www.apkbus.com/android-20978-1-1.htmlandriod闹钟源代码http://www.apkbus.com/android-20974-1-1.htmlandroid源码分享之指南针程序http://www.apk
2012-09-26 20:22:16
1052
转载 Android 2.2的新特性:全新的JIT内核编译器
大家知道Android 2.2的新特性中有条是“使用了全新的JIT内核编译器”,不过我们之前并没有得到更多的消息,最新消息显示,经测试新版的JIT编译器为2.2版系统带来高达500%效能提升。 Armor Games公司的应用开发人员Ian Douglas展示了Nexus
2011-10-11 15:37:20
1467
转载 LinkedHashMap的removeEldestEntry方法
LinkedHashMap有一个removeEldestEntry(Map.Entry eldest)方法,通过覆盖这个方法,加入一定的条件,满足条件返回true。当put进新的值方法返回true时,便移除该map中最老的键和值。 package scorpio.
2011-08-19 11:25:26
25531
1
原创 ContentObserver和DataSetObserver区别
ContentObserver是一个提前通知,这时候只是通知cursor说,我的内容变化了。DataSetObserver是一个后置通知,只有通过requery() deactivate() close()方法的调用才能获得这个通知。 因此,最为重要的还是ContentObserver,它可以告诉你数据库变化了,当然如果你要在更新完Cursor的dataset之后做一些事情,datasetObse
2011-06-22 16:58:00
4935
原创 HandlerThread
HandlerThread继承于Thread,所以它本质就是个Thread。与普通Thread的差别就在于,它有个Looper成员变量。这个Looper其实就是对消息队列以及队列处理逻辑的封装,简单说就是 消息队列+消息循环。当我们需要一个工作者线程,而不是把它当作一次性消耗品,用过即废弃的话,就可以使用它。 private Handler mHandler = null;
2011-06-22 11:24:00
18389
2
原创 Android异步加载图像小结
标签:android 异步 移动开发 加载图像 handler 研究了android从网络上异步加载图像,现总结如下:(1)由于android UI更新支持单一线程原则,所以从网络上取数据并更新到界面上,为了不阻塞主线程首先可能会想到以下方法。 在主线程中new 一个Handler对象,加载图像方法如下所示 private void loa
2011-06-21 15:22:00
1362
1
转载 Android 内存泄漏调试
<br />一、概述 1<br />二、Android(Java)中常见的容易引起内存泄漏的不良代码 1<br />(一) 查询数据库没有关闭游标 2<br />(二) 构造Adapter时,没有使用缓存的 convertView 3<br />(三) Bitmap对象不在使用时调用recycle()释放内存 4<br />(四) 释放对象的引用 4<br />(五) 其他 5<br />三、内存监测工具 DDMS --> Heap 5<br />四、内存分析工具 MAT(Memory Analyzer T
2011-05-25 23:44:00
1495
转载 ImageView的属性android:scaleType
<br /><br />ImageView的属性android:scaleType,即 ImageView.setScaleType(ImageView.ScaleType)。android:scaleType是控制图片如何 resized/moved来匹对ImageView的size。ImageView.ScaleType / android:scaleType值的意义区别: CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截 取图片的居中部分显示 C
2011-05-01 18:45:00
676
转载 Android里监视数据库的变化
<br />以launcher app为例说明,此功能的核心是ContentResolver 的notifyChange 和 registerContentObserver 接口。<br /><br />Launcher.java的一个方法(在onCreate方法里调用),这里即是为要监视的对象注册Observer。我这里讨论如何监视数据库里数据的变化,所以要监视的对象自然是数据库了, LauncherSettings.Favorites.CONTENT_URI 指向的就是一张数据库表(详见launcher
2011-02-18 16:44:00
1717
原创 listview item背景设置为透明
<br /> 在android开发中,listview的默认背景颜色是黑色的,所以在UI设计中,肯定会对它进行美化处理,尤其是在游戏开发中。最近在做用户聊天框的时候遇到一个这样的问题,我把显示用户聊天记录的listview背景设置成白色的,看起来没有什么问题,但是当我滚动滚动条的时候,有内容的listitem全部变成黑色的了,效果很不好。<br /> google了一下,原因是:默认的ListView的背景是透明的,而ListView的背景是固定不变的,所以当我滚动滚动条的时候,会实时地去将
2011-01-24 15:38:00
14092
转载 图片特效处理
<br /> 编程中有时候需要对图片做特殊的处理,比如将图片做出黑白的,或者老照片的效果,有时候还要对图片进行变换,以拉伸,扭曲等等。这些效果在OPhone中有很好的支持,通过颜色矩阵(ColorMatrix)和坐标变换矩阵(Matrix)可以完美的做出上面的所说的效果,下面将分别介绍这两个矩阵的用法和相关的函数。 颜色矩阵OPhone中可以通过颜色矩阵(ColorMatrix类)方面的操作颜色,颜色矩阵是一个5x4 的矩阵(如图1.1),可以用来方面的修改图片中RGBA各分量的值,颜色矩阵以一维数
2011-01-12 10:38:00
964
转载 Android获取其他包的Context实例然后干坏事
<br /> Android中有Context的概念,想必大家都知道。Context可以做很多事情,打开activity、发送广播、打开本包下文件夹和数据库、获取classLoader、获取资源等等。如果我们得到了一个包的Context对象,那我们基本上可以做这个包自己能做的大部分事情。<br /> 那我们能得到吗?很高兴的告诉你,能!<br /> Context有个createPackageContext方法,可以创建另外一个包的上下文,这个实例不同于它本身的Contex
2010-12-08 10:29:00
4102
转载 App Widget Framework分析之一:AppWidgetService
<br />App Widget Framework分析之一:AppWidgetService2010-04-15 10:36android在1.5版本新增加了时下流行的widget功能。坛子里也有不少童鞋对这个很感兴趣,也在开发相关<br />的widget. 那么今天就来讲讲android这套widget framework是如何工作的,应应景哈~~~~<br /><br />AppWidgetService.java 这是widget framework的核心类,是系统service之一,它承担着所有
2010-12-07 12:00:00
1410
转载 android学习总结
<br /><br />1<br />Acitity代码不再通过startSerivce和stopService启动关闭服务,另外,需要通过ServiceConnection的内部类实现来连接Service和Activity。<br />2<br />PendingIntent和Intent的区别:An Intent is something that is used right now; a PendingIntent is something that may create an Intent in t
2010-10-11 11:22:00
726
转载 SurfaceView 教程
<br />SurfaceView介绍<br />通常情况程序的View和用户响应都是在同一个线程中处理的,这也是为什么处理长时间事件(例如访问网络)需要放到另外的线程中去(防止阻塞当前UI线程的操作和绘制)。但是在其他线程中却不能修改UI元素,例如用后台线程更新自定义View(调用View的在自定义View中的onDraw函数)是不允许的。<br /> <br />如果需要在另外的线程绘制界面、需要迅速的更新界面或则渲染UI界面需要较长的时间,这种情况就要使用SurfaceView了。SurfaceVie
2010-10-11 11:20:00
903
转载 Android 数字签名学习笔记
<br />在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个permission的protectionLevel为signature,那么就只有那些跟该permission所在的程序拥有同一个数字证书的应用程序才能取得该权限。Android使用Java的数字证书相关的机制来给apk加盖数字证书,要理解android的数字证书,需要先了解以下数字证书的概念和java的数字证书机制。Android系统要求每一个安装进系统的
2010-09-24 23:56:00
843
转载 NinePatch圖檔
<br /><br /> 传统UI开发中,如果背景的大小不一样,一般需要为每种大小都制作一张图片,这在button中尤为明显。当然我们也可以一小块一小块水平重复的画,也可 以垂直的话。在android中专门有一种叫nine patch图片(以 9.png结尾)来解决背景大小不一样时,只用一张背景图片。<br /> 用自带的tools/draw9patch.bat 打开一张png图片,我们可以在png图片最外面的空格画一个像素宽的黑线。左边是编辑区,在左边的图中,左边黑线的高度决定了垂直拉升时的扩展
2010-09-21 16:54:00
6710
转载 android中activity的四种加载模式
<br /><br />一、何为加载模式<br /><br /><br />在android的多activity开发中,activity之间的跳转可能需要有多种方式,有时是普通的生成一个新实例,有时希望跳转到原来某个activity实例,而不是生成大量的重复的activity。加载模式便是决定以哪种方式启动一个跳转到原来某个Activity实例。<br /><br /><br />二、加载模式有哪些以及如何配置<br /><br /><br />1、在android里面,activity有四种加载模式:st
2010-09-21 00:00:00
618
转载 Android项目开发技术总结 by wellsoho
<br /><br />一 对话框(Dialog)<br />对话框通常有消息提示框、确定取消框、没有安全的提示语<br />1 消息框(确定或返回):<br />new Builder(MainActivity.this).setTitle("白社会").setIcon(R.drawable.logoico)<br /> .setMessage("基于搜狐网的应用,所有数据均来自搜狐。/n当前版本V1.0,版权所有?2010")<br /> .setNegativeButton("返回", new
2010-09-18 20:41:00
520
转载 转:如何获得Android手机Root权限
疑问一:Root权限是什么?疑问二:获取Root权限有什么用?疑问三:如何获得Root权限?答疑一: Root是Linux等类UNIX系统中的超级管理员用户帐户,该帐户拥有整个系统至高无上的权利,所有对象他都有可以操作的权利,所以很多黑客在入侵系统的时候,都要把权限提升到Root权限,也就是将自己的非法帐户添加到Root用户组。类比于 Administrator是Windows NT内核系统中的超级管理员用户帐户,也拥有最高的权限。但不同的是,在WINDOWS下Administrator的资源和别的用户资源
2010-09-18 20:31:00
1894
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人