Android开发历程_18(XML文件解析)
摘要:前言 本文主要介绍在Android中怎样来解析XML文件。主要采用的是SAX机制,SAX全称为Simple API for XML,它既是一种接口,也是一个软件包。作为接口,SAX是事件驱动型XML解析的一个标准接口。XML文件解析一般有2种方法,DOM和SAX。其中DOM需要先将xml文档全部读入到电脑内存中,当文档内容太大时,该方法并不适用。SAX就比较好的解决了该问题,它是逐行解析的,可以随时中断。但是SAX的操作比较复杂。因此,这2种方法各有优缺点,看具体应用情况。在前面的文章Qt学习之路_12(简易数据管理系统)中使用的是Qt中的DOM方法。 实验说明 大多数SAX实现都会...
阅读全文
posted @
2012-09-24 10:11
tornadomeet
阅读(2336)
推荐(0) 编辑
Android开发历程_17(ContentProvider的使用)
摘要:前言 Content Provider为存储数据和获取数据提供了统一的接口,它可以完成在不同应用程序下的数据共享,而在上一篇文章中Android开发历程_16(SQLite的使用)讲到的SQLite只能在同一个程序中共享数据。另外android为一些常见的数据,比如说音频,视频,图片,通讯录等提供了Content Provider,这样我们就可以很方便的对这些类型的数据操作了。使用ContentProvider的好处是开发人员不需要考虑数据内部是怎么存储的,比如说如果我们想利用ContenProvider来存数据,只需告诉insert函数该ContentProvider的uri和想存...
阅读全文
posted @
2012-09-04 22:31
tornadomeet
阅读(3265)
推荐(1) 编辑
Android开发历程_16(SQLite的使用)
摘要:前言 SQLite是一种轻量级的小型数据库,虽然比较小,但是功能相对比较完善,一些常见的数据库基本功能也具有,在现在的嵌入式系统中使用该数据库的比较多,因为它占用系统资源很少。Android系统中也不例外,也是采用SQLite,本节中就学习下在andorid中怎样使用该数据库来存放数据,并且对SQLite完成简单的新建,更新,查询,删除等操作。 实验说明: Android中使用SQLite数据库时,需要用adb来辅助调试,如果想在windows下的cmd命令行中使用adb,必须先配置环境变量,我这里是配的用户环境变量path: C:\Program Files\android-s...
阅读全文
posted @
2012-09-03 10:55
tornadomeet
阅读(2708)
推荐(1) 编辑
Android开发历程_15(AppWidget的使用)
摘要:Appwidget就是手机应用中常常放在桌面(即home)上的一些应用程序,比如说闹钟等。这种应用程序的特点是它上面显示的内容能够根据系统内部的数据进行更新,不需要我们进入到程序的内部去,比如说闹钟指针的摆动等。本节内容就简单的介绍下实现这种功能所用到的appwidget技术,通过3个例子由浅入深来学会使用它。参考资料是mars的教程。 实验基础: 自己实现一个AppWidget的步骤如下: 1. 在src目录下新建一个名为xml的文件夹,在该文件夹下新建一个xml文件,该xml文件的根标签为appwidget-provider. 该xml文件主要是对所建立的appwidget的一个...
阅读全文
posted @
2012-08-27 21:33
tornadomeet
阅读(7398)
推荐(1) 编辑
Android开发历程_14(广播机制)
摘要:广播机制按照字面理解就是广于播之,在计算机网络中这个词比较常见,它的意思是说发送端把信息发送出去,是以广播的方式发送出去,该信息可以同时被多个接收端介绍,当然接收端也可以不接收,另外接收端介绍到这信息后怎么处理广播的发送端也是不用考虑的。因此广播机制还是挺有用的,利用广播信息可以为触发的一些事件发送消息。Android中的广播机制可以参考mars老师的这张图片: 如图所示,有多个广播接收者在android中注册过,当一个事件产生后,它可以发送一个广播信息,然后这些接收者来接收该信息。广播接收者的实现一般是写成一个类,该类继承android提供的类BroadcastReceiver,并...
阅读全文
posted @
2012-08-27 09:40
tornadomeet
阅读(4217)
推荐(2) 编辑
Android开发历程_13(Service的使用)
摘要:Service在android中的地位和activity,只是它没有单独的界面,一般都是在后台运行,主要是用来运行一些消耗时间比较长的任务。我们可以用它来发送intent来更新activity的UI。另外需要注意的是service既不是一个单独的进程,也不是一个单独的线程,它与activity一起在同一个进程中。 关于android的sevice,网上这篇文章对service做了比较详细的介绍,并通过启动音乐播放器的例子来讲解service:http://www.cnblogs.com/allin/archive/2010/05/15/1736458.html Service的生命周期...
阅读全文
posted @
2012-08-20 12:53
tornadomeet
阅读(4635)
推荐(0) 编辑
Android开发历程_12(Handler的使用)
摘要:本文主要介绍Android中Handler的简单使用方法,Handler跟多线程,消息队列联系很紧密,在平常的实际程序开发中比较常见。本文分为4个简单的例子来学校handler。 参考资料为Mars老师的教程,http://www.mars-droid.com/. 开发环境为android4.1. 例1 这个例子是最简单的介绍handler使用的,是将handler绑定到它所建立的线程中. 本次实验完成的功能是:单击Start按钮,程序会开始启动线程,并且线程程序完成后延时1s会继续启动该线程,每次线程的run函数中完成对界面输出nUpdateThread...文字,不停的运行...
阅读全文
posted @
2012-08-19 22:06
tornadomeet
阅读(5301)
推荐(1) 编辑
总结系列_11(Andriod常见错误总结,续...)
摘要:1) 在实现从1个activity跳转到另一个activity时出现如下错误: Description Resource Path Location Type The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (HelloworldActivity.MyButtonListener) HelloworldActivity.java /helloworld/src/com/example/he...
阅读全文
posted @
2012-08-09 09:06
tornadomeet
阅读(7642)
推荐(0) 编辑
总结系列_10(Android开发总结,续...)
摘要:先装完jdk,再装elicpse和android,这2个只需解压到相应目录即可,无需安装,因为这2个程序的安装没有经过注册表。最后安装adk,在线安装的话就是最新版本的了,这时andriod-sdk版本可能不够,运行程序时会自动提示,那时更新即可。在工程中,每一个activity都对应一个xml文件,xml文件主要是控制各控件的位置和属性的.asserts目录下可以存放任何文件,res目录下也可以存放任意文件,且res下的文件会在gen目录下的R.java文件中自动生成一个全局id。res目录下的values目下的strings.xml中的控件也是每个控件都在R.jar中对应一个id号。当然l
阅读全文
posted @
2012-08-09 08:58
tornadomeet
阅读(1283)
推荐(0) 编辑
Android开发历程_11(AnimationListener的使用方法)
摘要:AnimationListener听名字就知道是对Animation设置监听器,说简单点就是在Animation动画效果开始执行前,执行完毕和重复执行时可以触发监听器,从而执行对应的函数。这种模式在实际运行过程中应该还是蛮有用的。 参考资料为Mars老师的教程,http://www.mars-droid.com/. 开发环境为android4.1. AnimaitonListener的使用方法主要是在Animation上设置一个监听器,即采用Animation的方法成员setAnimationListener().其参数就是监听器的函数。 现在来说说本次实验的功能,主要有2个按钮...
阅读全文
posted @
2012-08-07 22:37
tornadomeet
阅读(15817)
推荐(1) 编辑
Android开发历程_9(Frame Animation的使用)
摘要:Amination的整体使用有2种方法,即Tween Animation和Frame Animation,在博客Android开发历程_8(Tween Animation的2种属性设置方法) 中已经介绍了Tween Animation的使用方法,且讲到了其2种属性设置方式。这一节就来看看Frame Animation的使用。参考资料为Mars老师的资料。 Frame Animation的应用不是很广,它主要是将一张张图片串联起来播放,人眼看上去就感觉在动一样,就是利用这种特性到达动态效果。所以我们必须提前准备各种能组成动画的图片。 使用时需要在res下的drawable文件夹中放入...
阅读全文
posted @
2012-08-06 22:02
tornadomeet
阅读(1471)
推荐(0) 编辑
Android开发历程_8(Tween Animation的2种属性设置方法)
摘要:在Android开发中,Animation是用来给控件制作效果的。大多数的控件都可以用这个类,这个类包含了4种基本动作,分别为移动,旋转,淡入淡出,缩放。在使用Animation时,可以在.java文件中用java代码对其进行设置,这样的优点是可以方便调试程序效果;另外一种方法就是在xml中对控件的属性做设置,好处是代码的重用性比较高,缺点是不方便调试。本节中就简单介绍下这2种方法的使用流程。参考资料为mars老师的教程。一、在java代码中使用Animation. 在java代码中使用Animation主要分为下面4个步骤。 创建一个AnimationSet类,AnimationSe...
阅读全文
posted @
2012-08-06 19:54
tornadomeet
阅读(3695)
推荐(1) 编辑
Android开发历程_7(ListView和ProgressBar控件的学习)
摘要:ListView控件的使用: ListView控件里面装的是一行一行的数据,一行中可能有多列,选中一行,则该行的几列都被选中,同时可以触发一个事件,这种控件在平时还是用得很多的。 使用ListView时主要是要设置一个适配器,适配器主要是用来放置一些数据。使用起来稍微有些复杂,这里用的是android自带的SimpleAdapter,形式如下:android.widget.SimpleAdapter.SimpleAdapter(Context context, List<? extends Map<String, ?>> data, int resource, Stri
阅读全文
posted @
2012-07-30 14:42
tornadomeet
阅读(2189)
推荐(0) 编辑
Android开发历程_6(RadioButton和CheckBox的使用)
摘要:本次实验中主要是学习如何使用RadioGroup,CheckBox,RadioButton和Toast这几个控件,其中RadioButton是单选按钮,多个RadioButton放在一个RadioGroup控件中,也就是说每次只能有1个RadioButton被选中。而CheckBox是多选按钮,Toatst是android中带的一个用于显示提示小窗口消息的控件,其提示的内容过一会儿会自动消失。 RadioGroup和CheckBox控件设置监听器都是用的setOnCheckedChangeListener函数,其输入参数是一个函数,且函数内部要实现1个内部类。RadioGroup监听器...
阅读全文
posted @
2012-07-30 08:10
tornadomeet
阅读(4355)
推荐(0) 编辑
Android开发历程_5(Activity相对布局)
摘要:相对布局要比前面讲的线性布局和表格布局要灵活一些,所以平常用得也是比较多的。相对布局控件的位置是与其周围控件的位置相关的,从名字可以看出来,这些位置都是相对的,确定出了其中一个控件的位置就可以确定另一个控件的位置了。 本次实验就是显示如下的activity: 其中只有2个button,1个textview,1个edittext。 在相对布局中,一般用到的控件属性解释如下: 在相对布局中有如下属性,解释如下: android:layout_above 为将该控件的底部放在指定id控件的上方 android:layout_below 同理类似,将该控件的顶部放在指定id控件的下方 ...
阅读全文
posted @
2012-07-29 22:15
tornadomeet
阅读(6251)
推荐(1) 编辑
Android开发历程_4(Activity线性布局和表格布局)
摘要:在activity的布局中,线性布局和表格布局是最简单的,这次分别从线性布局,表格布局以及线性布局和表格混合布局做了实验,实验中只需要编写相应的xml的代码,java代码不需要更改,因为我们这里只是练习android的界面设计。参考的资料为mars老师的教程。 线性布局: 线性布局就是将各种控件按照行或者列依次进行排列。 其中本实验用到的各控件的属性解释如下: android:layout_weight属性是指不同的控件在activity中占有体积大小的比例。 android:paddingLeft指内边距左的距离,即控件内文字离控件左边边界的距离。其它的类推。 a...
阅读全文
posted @
2012-07-29 20:13
tornadomeet
阅读(4848)
推荐(0) 编辑
Android开发历程_3(Activity生命周期)
摘要:Activity中有7个与生命周期有关的函数。其中onCreated()是activity第一次被启动时执行的,主要是初始化一些变量,onRestart()是当前activity重新被启动时调用的;绑定一些监听器等;onStart()是activity界面被显示出来的时候执行的;onResu...
阅读全文
posted @
2012-07-29 16:19
tornadomeet
阅读(2977)
推荐(0) 编辑
Android开发历程_2(实现简单的乘法计算)
摘要:本次实验主要是完成输入2个数相乘,并显示其结果。共涉及到4个控件的使用学习,输入数字采用EditText,显示结果用TextView,运算按钮button以及菜单中的退出键。参考资料为mars老师的资料。 开发环境:android4.1. 实验功能: 在第一个界面中的2个乘数输入处分别输入2个数字,按下结果button,会自动跳到第二个界面并显示输入2个数字相乘的结果。如果在第一个界面中点击系统的menu按钮,则会自动弹出一个菜单,菜单栏包括退出和关于2个按钮,点击退出按钮,则退出了该程序。 实验说明: 1. 第1个activity的步骤大概如下: 创建一个监听器。 创建一个in...
阅读全文
posted @
2012-07-29 14:48
tornadomeet
阅读(6115)
推荐(1) 编辑
Android开发历程_1(从1个activity跳转到另一个activity)
摘要:今天第一次学习android开发,配置好了环境后就打算来个hello world程序,且实现从一个activity跳转到另一个activity中去。 开发环境:android4.1.1 实验功能: 在第一个Hello World!为标签的activity中显示good,该界面中有一个名为Next的按钮。点击Next按钮进入到第二个activity中去,第二个界面中只有1个Close按钮。当然,据网上有人将要比较安全的实现关闭程序的功能也不是挺简单的,因为android有专门的退出键返回键等。所以该Close按钮暂时没去实现它。 我的第1个activity为Hellowor...
阅读全文
posted @
2012-07-28 22:21
tornadomeet
阅读(22919)
推荐(2) 编辑