上一页 1 ··· 4 5 6 7 8 9 10 下一页

2012年8月31日

setImageResource与setImageBitmap的区别

摘要: 同样的布局文件,小分辨率手机:1、使用setImageBitmap设置时,出现如下现象:2、使用setImageResource时,图片显示正常原因:setImageResource(id)会根据设备分辨率进行图片大小缩放适配setImageBitmap(BitmapFactory.decodeResource(res,id))大小需要手动调。如果你提供了完整的各种分辨率下的图片的话,两种方法都应该不会有混乱。 阅读全文

posted @ 2012-08-31 09:43 沙翁 阅读(21158) 评论(0) 推荐(1)

2012年7月10日

Bitmap Drawable Canvas Paint比较

摘要: Bitmap - 称作位图,一般位图的文件格式后缀为bmp,当然编码器也有很多如RGB565、RGB888。作为一种逐像素的显示对象执行效率高,但是缺点也很明显存储效率低。我们理解为一种存储对象比较好。 Drawable - 作为Android平下通用的图形对象,它可以装载常用格式的图像,比如GIF、PNG、JPG,当然也支持BMP,当然还提供一些高级的可视化对象,比如渐变、图形等。 Canvas - 名为画布,我们可以看作是一种处理过程,使用各种方法来管理Bitmap、GL或者Path路径,同时它可以配合Matrix矩阵类给图像做旋转、缩放等操作,同时Canvas类还提供了裁剪、选取... 阅读全文

posted @ 2012-07-10 19:08 沙翁 阅读(352) 评论(0) 推荐(0)

android 获取手机号问题

摘要: 不是所有的手机都能获取到手机号码。只是有一部分可以拿到。这个是由于移动运营商没有把手机号码的数据写入到sim卡中。SIM卡只有唯一的编号,供网络与设备识别那就是IMSI号码,手机的信号也可以说是通过这个号码在网络中传递的,并不是手机号码。试想,你的SIM丢失后,补办一张新的会换号码吗?是不会的,就是因为在你的手机号码对应的IMSI号在移动运营商中被修改成新SIM卡的IMSI号码。 那么手机号为什么有的就能显示呢? 这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值,不赋值自然为空。 对于移动的用户,手机号码(MDN)保存在运营商的服务器中,而不是保存在SIM卡里。SIM卡... 阅读全文

posted @ 2012-07-10 18:59 沙翁 阅读(793) 评论(0) 推荐(0)

Android开发:LayoutParams的用法

摘要: LayoutParams继承于Android.View.ViewGroup.LayoutParams. LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进去。 可以这样去形容LayoutParams,在象棋的棋盘上,每个棋子都占据一个位置,也就是每个棋子都有一个位置的信息,如这个棋子在4行4列,这里的“4行4列”就是棋子的LayoutParams。 但Lay... 阅读全文

posted @ 2012-07-10 18:45 沙翁 阅读(141333) 评论(9) 推荐(9)

2012年7月3日

获取Android正在运行的任务和服务

摘要: 检测某ActivityUpdate是否在当前Task的栈顶public static boolean isTopActivy(String cmdName, Context context) { ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<RunningTaskInfo> runningTaskInfos = manager.getRunningTasks(Integer.MAX_VALUE); ... 阅读全文

posted @ 2012-07-03 20:44 沙翁 阅读(18105) 评论(0) 推荐(1)

Activity生命周期详解

摘要: 三个循环提供两个关于Activity的生命周期模型图示帮助理解: 图1 图2从图2所示的Activity生命周期不难看出,在这个图中包含了两层循环,第一层循环是onPause -> onResume -> onPause,第二层循环是onStop -> onRestart -> onStart -> onResume -> onPause -> onStop。我们可以将这两层循环看成是整合Activity生命周期中的子生命周期。第一层循环称为焦点生命周期,第二层循环称为可视生命周期。也就是说,第一层循环在Activity焦点的获得与失去的过程中循环,在 阅读全文

posted @ 2012-07-03 20:37 沙翁 阅读(13111) 评论(4) 推荐(6)

2012年6月30日

华为投身互联网:吹了冲锋号 就要往前冲

摘要: 两年前,当华为以全球第二大电信设备商的身份,跳进手机的舞池,与苹果、三星、HTC等手机厂商较量身段时,外界不乏疑虑。如今,手机之战正酣,华为又吹响了另一场角斗的冲锋号。今年上半年,原隶属于华为软件公司的互联网业务部,升级成为大华为的二级部门,与终端公司、海思消费者芯片等一起整合成华为三大业务集团之一的消费者BG。 近日,华为消费者业务集团CEO余承东通过微博透露,从今年7月开始,华为的天天聊、天天浏览器、天天电话、天天秀等天天系列互联网产品,将随华为手机新系统界面Emotion UI一起陆续呈现给消费者。这将是华为互联网产品的首次集体亮相。 “华为在互联网领域还是小学生。”对于华为的互... 阅读全文

posted @ 2012-06-30 18:59 沙翁 阅读(328) 评论(0) 推荐(0)

The content of the adapter has changed but ListView did not receive a notification

摘要: 问题原因:Adapter数据更新后,没有及时使用notifyDataSetChanged()方法通知UI,导致出现数据不一致而报错。java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. [in Li.. 阅读全文

posted @ 2012-06-30 18:52 沙翁 阅读(5377) 评论(0) 推荐(0)

2012年6月29日

Context 使用不当造成内存泄露

摘要: 问题: Activity中的context被传递给了一个生命周期长过activity的对象(通常为静态单实例变量),导致activity不能正常被销毁。 示例:Activity 调用 ChatMgr 时将context传递进来,由于ChatMgr为单实例对象,context被引用,导致Activity退出时无法销毁。见代码:public static ChatMgr getInstance(Context context){ if (instance == null) { instance = new ChatMgr(); } mContext... 阅读全文

posted @ 2012-06-29 20:36 沙翁 阅读(459) 评论(0) 推荐(0)

如何避免Android内存泄漏——Context

摘要: 我们在做android应用开发的时候经常会陷入内存泄漏的问题中,大多数时候内存的泄漏都是由于犯了相同的错误:长期持有了一个Context的引用。Android上 ,Context可以用于很多操作,但是大部分时候是用来加载以及使用资源。这就是为什么所有的widgets在他们的构造函数中接受一个Context参数。在一般的android应用中,你通常有两种Context:分别是Activity和Application。通常的,当我们的类和方法需要使用到context时,我们传递的是Activity这个context:@Override protected void onCreate(Bund... 阅读全文

posted @ 2012-06-29 20:27 沙翁 阅读(1958) 评论(0) 推荐(1)

上一页 1 ··· 4 5 6 7 8 9 10 下一页

导航