随笔分类 -  Android

上一页 1 2 3

android应用开发的经验分享
如何配置android的adb环境变量
摘要:图文并茂的操作流程,很容易学会。。。http://jingyan.baidu.com/article/17bd8e52f514d985ab2bb800.html 阅读全文

posted @ 2013-09-02 06:24 沙翁 阅读(254) 评论(0) 推荐(0)

Drawable和Bitmap的区别
摘要:对比项 显示清晰度占用内存 支持缩放 支持色相色差调整支持旋转 支持透明色 绘制速度 支持像素操作Bitmap 相同 大 是 是是 是 慢是Drawable 相同 小 是否是 是 快 否Drawable在内存占用和绘制速度这两个非常关键的点上胜过Bitmap 阅读全文

posted @ 2012-11-12 20:07 沙翁 阅读(1938) 评论(0) 推荐(0)

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

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

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)

获取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 沙翁 阅读(13101) 评论(4) 推荐(6)

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)

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 沙翁 阅读(458) 评论(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 沙翁 阅读(1957) 评论(0) 推荐(1)

startActivity时报错Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag
摘要:原代码如下:Intent intent = new Intent();intent.setClass(mContext, PhotoView.class);Bundle bundle = new Bundle();intent.putExtras(bundle); mContext.startActivity(intent);报错如下:06-28 11:24:40.359: E/AndroidRuntime(7397): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activi 阅读全文

posted @ 2012-06-29 19:59 沙翁 阅读(17947) 评论(0) 推荐(2)

TextView中使用Linkify添加超链接
摘要:首先,在TextView所属xml配置文件中,直接添加android:autoLink特性即可,它支持一个或多个(用分割线)自定义的值:none、web、email、phone或all。 另外,你还可以用Linkify来添加超链接,下面介绍一下这个类: Linkify是一个辅助类,通过RegEx样式匹配,自动地在TextView类(和继承的类)中创建超链接。 符合特定的RegEx样式的文本会被转变成可点击的超链接,这些超链接隐式地调用startActivity(new Intent(Intent.ACTION_VIEW, uri)),符合的文本会作为目标URI。 你可以指定任意的字符串样式.. 阅读全文

posted @ 2012-06-25 18:25 沙翁 阅读(2389) 评论(0) 推荐(0)

ListView适配器Adapter介绍与优化
摘要:一、ListView与Adapter的关系 ListView是Android开发过程中较为常见的组件之一,它将数据以列表的形式展现出来。一般而言,一个ListView由以下三个元素组成: 1、View,用于展示列表,通常是一个xml所指定的。大家都知道Android的界面基本上是由xml文件负责完成的,所以ListView的界面也理所应当的使用了xml定义。例如在ListView中经常用到的“android.R.layout.simple_list_item”等, 就是Android系统内部定义好的一个xml文件。 2、适配器,用来将不同的数据映射到View上。不同的数据对应不同的适配器,如B 阅读全文

posted @ 2012-06-14 20:39 沙翁 阅读(12616) 评论(2) 推荐(2)

Android颜色选择器介绍
摘要:使用Android的颜色选择器可以让我们的view在不同状态下显示不同的颜色。1、Android中ListView 选择某项改变该行字体颜色2、文件位置res/color/filename.xml,文件名被做资源的ID3、语法示例<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_selected=&qu 阅读全文

posted @ 2012-06-14 18:56 沙翁 阅读(17884) 评论(0) 推荐(0)

Android开发出现 StackOverflowError
摘要:问题:StackOverflowError在HTC或者摩托罗拉的手机上测试出现 StackOverflowError 的错误。06-12 10:28:31.750: E/AndroidRuntime(13995): FATAL EXCEPTION: main06-12 10:28:31.750: E/AndroidRuntime(13995): java.lang.StackOverflowError06-12 10:28:31.750: E/AndroidRuntime(13995): at android.text.Layout.getLineForOffset(Layo... 阅读全文

posted @ 2012-06-13 08:42 沙翁 阅读(13753) 评论(3) 推荐(0)

Android控件之TextView
摘要:属性名称描述android:autoLink设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)android:autoText如果设置,将自动执行输入值的拼写纠正。此处无效果,在显示输入法并输入的时候起作用。android:bufferType指定getText()方式取得的文本类别。选项editable类似于StringBuilder可追加字符,也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式,参见这里1、这里2。android:ca 阅读全文

posted @ 2012-05-29 09:26 沙翁 阅读(372) 评论(0) 推荐(0)

LayoutInflater
摘要:LayoutInflater的作用 LayoutInflater这的作用类似于findViewById()。不同点是: LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化为View类对象。对于一个已经载入的界面,就可以使用Activiyt.findViewById()方法来获得其中的界面元素,因为在一个Activity里对应的是setConentView()的那个layout里的组件。 通俗的说,inflate就相当于将一个xml中定义的布局找出来。因此如果你的Activity里如果用到别的layout,比如对话框上的layout,你还要设置对话... 阅读全文

posted @ 2012-05-29 09:11 沙翁 阅读(237) 评论(0) 推荐(0)

Android UI线程
摘要:在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则:1. 不要阻塞UI线程2. 确保只在UI线程中访问Android UI工具包 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处理。所以主线程通常又被叫做UI线程。 比如说从网上获取一个网页,在一个TextView中将其源代码显示出来,这种涉及到网络操作的程序一般.. 阅读全文

posted @ 2012-05-26 08:55 沙翁 阅读(291) 评论(0) 推荐(0)

Android 短彩信数据模型介绍
摘要:存储路径:/data/data/com.android.providers.telephony/databases/mmssms.db数据表MMS模块总共包含17张表:addr、android_metadata、attachments、canonical_addresses、drm、part、pdu、pending_msgs、rate、raw、sms、sr_pending、threads、words、words_content、words_segdir、words_segments。其中,pending_msgs表用于存储待发送或下载的短信与彩信(有待证实),使用pdu中的触发器进行插入和删除 阅读全文

posted @ 2012-05-26 08:53 沙翁 阅读(4505) 评论(0) 推荐(0)

上一页 1 2 3

导航