
Android_笔记
wly7746
这个作者很懒,什么都没留下…
展开
-
Android短信数据库读取问题
今天将短信软件在真机上测试,一直装不上,在模拟器上都是好的。一直报NullPointerException空指针异常。后来又单独写了个测试程序,经过不断尝试发现是短信数据库中的"address"字段的问题。由于不能在命令中查看字段类型,所以我用一个小工具SQLite Developer来查看字段类型,使用SQLite Developer查看得"address"字段的数据类型是TEXT,于是...原创 2012-05-10 16:07:57 · 404 阅读 · 0 评论 -
Android中的ViewHolder
为什么要使用ViewHodler,因为使用ViewHodler可以节省程序的内粗你开销,具体如下:@Override public View getView(final int position, View convertView, ViewGroup parent) { final ViewHolder holder; final Menu _m = (Menu)l...原创 2013-05-08 11:18:53 · 291 阅读 · 0 评论 -
Android实现单任务线程队列
这是项目中遇到的一个问题,需要解析一个xml文件,得到要下载的文件列表,根据该文件列表来下载数据包。刚开始一直想用使用for、while等流程控制语句。但导致的结构就是开启了多个线程。可是,实际上只能开启一个任务,该任务为下载列表中某个数据包的下载任务,而该下载任务则是使用多线程下载实现的。 后来,因为涉及到当前下载进度的统计和反馈,越写越乱。于是又重新写了个测试程序,突...原创 2012-08-21 17:18:06 · 1179 阅读 · 0 评论 -
Android中的事件传递
前段时间项目中用到了一个九宫格按钮拖动效果的需求,当时写的比较乱,现在有看了一下onInterceptTouchEvent和onTouchEvent()的传递过程,这里做下记录,首先看api文档中对onInterceptTouchEvent()的描述 Events will be received in the following order:You will recei...2012-12-02 11:23:11 · 134 阅读 · 0 评论 -
在ActivityGroup中使用startActivityForResult
有一个Activitygroup A,A中有两个活动B和C。现在在B中使用startActivityForResult()方法启动了C,则在B中的onActivityResult()方法是无法被激发的,因为事件被传递到了其父活动中的onActivityResult()截获,那么我们可以使用ActivityGroup.getLocalActivityManager.getCurrentA...原创 2012-12-04 10:08:42 · 150 阅读 · 0 评论 -
Android 调用相机以及调用系统图片软件浏览图片
1、调用系统中的图片浏览软件,使用Intent实现: Intent i2 = new Intent(Intent.ACTION_GET_CONTENT); File file=new File("系统根目录"); i2.setAction(Intent.ACTION_PICK); startActivityForResult(...原创 2012-12-08 13:41:44 · 234 阅读 · 0 评论 -
Android中的OnMeasure及OnLayout
1、View中包含onLayout()、onMeasure()、layout()、measure()。查看源码可以在View的layout()中调用了onLayout(),而onLayout()本身是一个等待重写的空方法,同样的在measure()中调用了onMeasure()方法,和onLayout()不同的是onMeasure()并不是一个空方法,在其中调用了setMeasure...原创 2013-06-13 13:59:34 · 260 阅读 · 0 评论 -
(转)Eclipse build Android时不生成apk问题解决方法
Eclisps有时build后不生成apk。没有对Eclise做过设置调整,android工程代码也是没有问题的。反正就是莫名奇妙的遇到两次,解决方法如下:1、设置:Preferences -> Android -> Build中有一项“Skip packaging and dexing until export or launch....”,去除勾选状态2、...原创 2012-12-25 14:55:09 · 155 阅读 · 0 评论 -
关于Android中的Canvas的学习笔记
关于Canvas,先看API。在Dev Guide中的Canvas and Drawables中介绍到: 在UI线程中刷新view需要调用invalidate(),并处理回调方法onDraw()。如果在一个独立线程中,比如管理一个SurfaceView的线程中,就不需要调用invalidate()了。 一个Canvas就是一个画布,它通过了各种draw方法的接口。一个Canv...原创 2012-12-30 21:01:43 · 145 阅读 · 0 评论 -
关于使用ActivityGroup实现活动跳转带来的问题
需要使用ActivityGroup实现Tab下内嵌多组Activity的效果。这样的教程网上很多,这里就不做详细的介绍了,大致是这样的: Window w = ActivityGroup.getLocationActivityManager().startActivity(String FLAG,Intent i); ActivityGroup.setCo...原创 2013-01-05 15:53:40 · 169 阅读 · 0 评论 -
调用TextView.setText后组件发生抖动问题及解决
项目需要做一个首页新闻图片自动无限循环的组件,上面配有标识的RadioGroup。这个简单。可是后来UI设计出来的效果,要求在图片的下方添加一个灰色颜色带,再在这个颜色带上显示关于图片的标题。我想,这个也简单,分分钟的事。起先,我将表示TextView的组件引用传递个自定义的Gallery,让Gallery自动滚动时也顺带把TextView的值改变过来。可是运行起来后,发现字是改变过...原创 2013-07-12 11:13:38 · 550 阅读 · 0 评论 -
Android GestureDetector手势监听
仅作摘要,便于回顾。 我们知道Android中可以为组件设置onTouchListener(),来监听上面的onTouch()事件,但是onTouch()只能处理比较简单的事件,所以Android中有一个封装好的手势监听类GestureDetector,可以为该类配置相应的监听接口,如:SimpleOnGestureListener对象。问题的关键是,我们可以为自己的组件设置...原创 2012-11-23 12:19:39 · 206 阅读 · 0 评论 -
公司项目更新测试临时地址
*Project:XiangShanOA#Version:2#URL:http://d.pcs.baidu.com/file/bd43151f40bcc711d3a010f04adcf5ad?fid=2385900729-250528-3834321278&time=1366697105&sign=FDTAR-DCb740ccc5511e5e8fedcff06b081203-j...原创 2013-04-23 10:19:26 · 154 阅读 · 0 评论 -
关于Android中windowleaked异常的理解
首先,这是今天遇到的一个问题,应该算是一个小问题吧,下面是我的代码: saveDiary.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //将新建的游记保存到数据库 ContentValues value...原创 2012-07-29 17:22:19 · 126 阅读 · 0 评论 -
使用ListActivity得到ListView
方法一1.继承ListAcvitity类。2.需要注意的是在ListActivity的清单文件中,需要包含一个id为android:list的listview组件,具体:3.创建ArrayAdapter (关键在这里,注意构造函数的形式,如:ArrayAdapter(Contetxt context,int resource,T[] objects)4.调用ListActivity...原创 2012-02-20 18:05:12 · 145 阅读 · 0 评论 -
有关PendingIntent和Notification之间的数据传递与更新
[size=medium] 这段文章,主要是我在学习Android中遇到PendingIntent和Notification之间的数据的传递与更新[/size] 关于Notification的创建及使用,在这我就不讲了,网上很多。这里主要描述的是我在学习中遇到的一个问题,也许也有其他的人和我一样遇到这样的问题,所以分享一下。 问题描述:最近在做一个短信软件的练习,我使用一...原创 2012-02-21 14:22:37 · 209 阅读 · 0 评论 -
在Android系统中使用SQL语句 + Cursor完成数据的查询
其实,也没什么内容,因为以前没有系统的学过SQL语言,只知道最基础的创建、连接、添、删、改、查命令。于是,在最近的短信程序中就用一大段代码读取短信Provider中某个号码中的短信数量。十分的悲催。昨晚看了下SQL基础。突然发现好像可以使用简单的SQL函数COUNT得到数据库中的指定条件的数据数量信息。于是抱着试一下的态度,竟然成功了!激动之下,就发出来分享一下!以下是具体代码实现: ...原创 2012-02-26 15:50:52 · 608 阅读 · 0 评论 -
使用CursorAdapter自定义Cursor和ListView之间的数据绑定
最近在做一个短信应用,需要将系统的短信数据读取出来,并显示在listview中,但是由于短信数据本身并不是十分适合于软件用户直接阅读。必须将短信内容适当修改后才能更为用户接受。刚开始我用的SimpleAdapter实现,但是后来发现使用SimpleAdapter实现的话,列表的渲染速度很慢,于是决定改用SimpleCursorAdapter,但是刚开始时不知道怎么将数据修改后添加到lsit...原创 2012-02-28 20:54:52 · 396 阅读 · 0 评论 -
使用ContentObserver监听事件变化并及时刷新列表效果
在开发中需要列表的及时刷新,刚开始每次都是重新查询数据再渲染列表,可以这样的话速度十分慢,后来查了一下,发现使用ContentObserver可以实现这种效果。以下是具体代码: class MyObserver extends ContentObserver { private Cursor cursor = null; public MyObser...原创 2012-02-29 15:20:27 · 284 阅读 · 0 评论 -
Android中SQLite学习小结
SQLiteOpenHelper类提供了两个重要的方法,分别是onCreate(SQLiteDatabase db)和onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion),前者用于初次使用软件时生成数据库表,后者用于升级软件时更新数据库表结构。当调用SQLiteOpenHelper的getWritableDatab...原创 2012-03-03 16:36:51 · 85 阅读 · 0 评论 -
使用startActivityResult()保存Listview滚动条位置
有关于startActivityForResult():父活动(caller)中有:startActivityForResult(Intent,requestCode)//启动一个activity包含参数请求码和具体的intent数据,其中请求码可以用来识别子活动onActivityResult(int requestCode, int resultCode, Intent data)...2012-03-05 15:35:49 · 118 阅读 · 0 评论 -
AnimationDrawable(一)
AnimationDrawable可以实现资源的帧动画,只需要在res/drawable下新建一个以<animation-list>为根节点的xml文件。其中的子元素<item>包含两个限制条件,一个是对应的资源文件,一个是要显示的时间长度。注意<animation-list>中还有一个oneshot属性,将其设置为true则表示Animation...原创 2013-03-21 10:15:18 · 152 阅读 · 0 评论 -
android_AIDL初步
让人纠结的AIDL进程间通信,原本想把里面的机制都看懂,但是看了许久还是晕晕的,感觉里面封装的太多,所以就先了解一下AIDL的简单运用好了。 这里我写了一个调用Service中的两个方法的Demo,以下是效果图: 下面是代码: 新建Activity,E_AIDLActivity.java package com.wly.E...原创 2012-04-02 20:23:30 · 117 阅读 · 0 评论 -
使用Handler+Thread实现Loading...开始界面循环提示动画
突然想实现类似于软件启动时的Loading...循环提示信息,写了一下基本实现了这个功能,但由于是动画效果就不截图了,下面是代码: package com.wly.summary.mechanism;import android.app.Activity;import android.os.Bundle;import android.os.Handler;...2012-04-06 20:27:48 · 223 阅读 · 0 评论 -
android中GC_FOR_MALLOC含义
GC_FOR_MALLOC means that the GC was triggered because there wasn't enough memory left on the heap to perform an allocation. Might be triggered when new objects are being created.在堆的内存不足以为一个新的对象分配空...原创 2013-07-22 10:00:08 · 272 阅读 · 0 评论