摘要:短信精灵是一款短信分类发送的手机辅助工具,需要andriod2.1以上平台支持,内置了2000多条经典短信信息,与其他短信辅助工具不同的是,附带的短信数据可以分成大类和小类存放,并且类别可以进行维护设置,方便用户进行分类查找选择。各模块的功能简介如下:1.发送短信:可以按短信大类->短信小类的层次从附带的短信数据中找到想要发送的短信,选好短信内容后,可以从用户手机的联系人中选择想要发送的用户列表,群发短信2.新增短信:用户可以自编短信,并且按设置好的短信分类将其存储到指定短信类别中,以便下次使用3.短信类别维护:可以添加、修改、删除短信大类和短信小类(注意:大类中如果有小类不能删除,小类
阅读全文
摘要:开发android应用,肯定会经常用到andorid手机联系人,在android中一般都用Listview呈现手机联系人,如果想实现用checkbox实现全选的效果,默认的ListView好像不太好解决这个问题。以下步骤,可以使用自定义布局来实现手机联系人的全选,效果如下图1.创建包含Listview的主界面布局文件main.xml <?xml version="1.0" encoding="utf-8"?><LinearLayout android:orientation="vertical" android:la
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 越来越多的手机具备自动对焦的拍摄功能,这也意味着这些手机可以具备条码扫描的功能.......手机具备条码扫描的功能,可以优化购物流程,快速存储电子名片(二维码)等。 本文使用ZXing 1.6实现条码/二维码识别。ZXing是个很经典的条码/二维码识别的开源类库,long long ago,就有开发者在J2ME上使用ZXing了,不过要支持JSR-234规范(自动对焦)的手机才能发挥其威力,而目前已经有不少Android手机具备自动对焦的功能。本文代码运行的结果如下,使用91手机助手截图时,无法截取Sur
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 在Android里要实现树形菜单,都是用ExpandableList(也有高手自己继承ListView或者LinearLayout来做),但是ExpandableList一般只能实现2级树形菜单......本文也依然使用ExpandableList,但是要实现的是3级树形菜单。本文程序运行效果图:当用BaseExpandableListAdapter来实现二级树形菜单时,父项(getGroupView())和子项(getChildView())都是使用TextView。当要实现三级树形菜单时,子项(get
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 上次介绍了使用GridView实现表格,这次就说说如何用ListView实现自适应的表格。GridView比ListView更容易实现自适应的表格,但是GridView每个格单元的大小固定,而ListView实现的表格可以自定义每个格单元的大小,但因此实现自适应表格也会复杂些(格单元大小不一)。另外,GridView实现的表格可以定位在具体某个格单元,而ListView实现的表格则只能定位在表格行。因此还是那句老话:根据具体的使用环境而选择GridView 或者 ListView实现表格。先贴出本文程序运
阅读全文
摘要:上次讲的Android上的SQLite分页读取,只用文本框显示数据而已,这次就讲得更加深入些,实现并封装一个SQL分页表格控件,不仅支持分页还是以表格的形式展示数据。先来看看本文程序运行的动画: 这个SQL分页表格控件主要分为“表格区”和“分页栏”这两部分,这两部分都是基于GridView实现的。网上介绍Android上实现表格的DEMO一般都用ListView。ListView与GridView对比,ListView最大的优势是格单元的大小可以自定义,可以某单元长某单元短,但是难于实现自适应数据表的结构;而GridView最大的优势就是自适应数据表的结构,但是格单元统一大小。。。对于数据表结
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! Android包含了常用于嵌入式系统的SQLite,免去了开发者自己移植安装的功夫。SQLite 支持多数 SQL92 标准,很多常用的SQL命令都能在SQLite上面使用,除此之外Android还提供了一系列自定义的方法去简化对SQLite数据库的操作。不过有跨平台需求的程序就建议使用标准的SQL语句,毕竟这样容易在多个平台之间移植。先贴出本文程序运行的结果:本文主要讲解了SQLite的基本用法,如:创建数据库,使用SQL命令查询数据表、插入数据,关闭数据库,以及使用GridView实现了一个分页栏(关
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处!本文使用SAX来解析XML,在Android里面可以使用SAX和DOM,DOM需要把整个XML文件读入内存再解析,比较消耗内存,而SAX基于事件驱动的处理方式,可以在各节点触发回调函数,不过SAX适合节点结构简单的XML文档,复杂的XML文档在后期的节点深度处理会有点麻烦。本文要解析的test.xml文件如下:view plaincopy to clipboardprint?<?xmlversion="1.0"encoding="utf-8"?><t
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 前面分别讨论了Activity和Service,这次就轮到BroastcastReceiver,Broastcast是应用程序间通信的手段。BroastcastReceiver也是跟Intent紧密相连的,动态/静态注册了BroastcastReceiver之后,使用sendBroadcast把Intent发送之后,系统会自动把符合条件的BroastcastReceiver启动,跟嵌入式系统的中断类似。 本文主要演示了如何静态/动态注册BroastcastReceiver,向系统索取电量信息,以及枚举信息
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 上次介绍了Activity以及Intent的使用,这次就介绍Service,如果把Activity比喻为前台程序,那么Service就是后台程序,Service的整个生命周期都只会在后台执行。Service跟Activity一样也由Intent调用。在工程里想要添加一个Service,先新建继承Service的类,然后到AndroidManifest.xml -> Application ->Application Nodes中的Service标签中添加。 Service要由Activity通
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 越来越多互联网企业都在Android平台上部署其客户端,为了提升用户体验,这些客户端都做得布局合理而且美观.......Android的Style设计就是提升用户体验的关键之一。Android上的Style分为了两个方面:Theme是针对窗体级别的,改变窗体样式;Style是针对窗体元素级别的,改变指定控件或者Layout的样式。Android系统的themes.xml和style.xml(位于/base/core/res/res/values/)包含了很多系统定义好的style,建议在里面挑个合适的,然
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 很多客户端软件和浏览器软件都喜欢用Tab分页标签来搭建界面框架。读者也许会马上想到使用TabHost 与 TabActivity的组合,其实最常用的不是它们,而是由GridView与ActivityGroup的组合。每当用户在GridView选中一项,ActivityGroup就把该项对应的Activity的Window作为View添加到ActivityGroup所指定的容器(LinearLayout)中。接下来贴出本例运行的效果图:ImageAdapter是本实例的关键之一,它继承于BaseAdapte
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 常用控件说了不少,现在说说手机开发中也常用到的画图。要掌握Android的画图,首先就要了解一下,基本用到的图形接口:1.Bitmap,可以来自资源/文件,也可以在程序中创建,实际上的功能相当于图片的存储空间;2.Canvas,紧密与Bitmap联系,把Bitmap比喻内容的话,那么Canvas就是提供了众多方法操作Bitamp的平台;3.Paint,与Canvas紧密联系,是"画板"上的笔刷工具,也用于设置View控件上的样式;4.Drawable,如果说前三者是看不见地在内存中画图
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 上次讲了如何使用Gallery控件,这次就讲Gallery 与ImageSwitcher的结合使用,本文实现一个简单的浏览图片的功能。先贴出程序运行截图:除了Gallery可以拖拉切换图片,我在ImageSwitcher控件加入了setOnTouchListener事件实现,使得ImageSwitcher也可以在拖拉中切换图片。本例子依然使用JAVA的反射机制来自动读取资源中的图片。main.xml的源码如下:view plaincopy to clipboardprint?<?xmlversion
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! Android的Gallery控件是个很不错的看图控件,大大减轻了开发者对于看图功能的开发,而且效果也比较美观。本文介绍Gallery的用法,用反射机制来动态读取资源中的图片。本文的效果图:main.xml源码:view plaincopy to clipboardprint?<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.and
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 这回要介绍的是Android的Tab控件,Tab控件可以达到分页的效果,让一个屏幕的内容尽量丰富,当然也会增加开发的复杂程度,在有必要的时候再使用。Android的Tab控件使用起来有点奇怪,必须包含和按照以下的顺序:TabHost控件->TabWidget(必须命名为tabs)->FrameLayout(必须命名为tabcontent)。接下来贴出本例运行的截图:main.xml的源码: view plaincopy to clipboardprint?<?xmlversion=&qu
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 介绍过AlertDialog之后,接下来就介绍一下PopupWindow这种对话框。PopupWindow是阻塞对话框,只有在外部线程 或者 PopupWindow本身做退出操作才行。PopupWindow完全依赖Layout做外观,在常见的开发中,PopupWindow应该会与AlertDialog常混用。 贴出本例中运行的结果图:main.xml的源码如下:view plaincopy to clipboardprint?<?xmlversion="1.0"encoding=
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 时隔一年,又要准备做Android的开发了,最近复习和整理一下Android的知识。这次要说的是AlertDialog,这种对话框会经常遇到。AlertDialog跟WIN32开发中的Dialog不一样,AlertDialog是非阻塞的,而阻塞的对话框用的是PopupWindow。 先贴出程序运行的截图:main.xml的源码:view plaincopy to clipboardprint?<?xmlversion="1.0"encoding="utf-8"
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ Android入门第六篇之ListView (一) ,讲的是如何制作一个具有两行文本的 自定义控件 ,作为ListView的Item的使用方法。这篇接下来也是围绕ListView和Item,更加深入地介绍它们的用法。 首先,先来看看本文代码运行的结果,本文的Item比上一篇中的Item多出左边的图标: main.xml的源代码,跟上一篇的一样,这里就不作解释了,直接贴出item.xml的代码,就是它实现ImageItem的UI: view plaincopy to clipboardprint?<?xmlversion=
阅读全文
摘要:本文来自http://blog.csdn.net/hellogv/ ListView是一个经常用到的控件,ListView里面的每个子项Item可以使一个字符串,也可以是一个组合控件。先说说ListView的实现: 1.准备ListView要显示的数据 ; 2.使用 一维或多维 动态数组 保存数据;2.构建适配器 , 简单地来说, 适配器就是 Item数组 , 动态数组 有多少元素就生成多少个Item; 3.把 适配器 添加到ListView,并显示出来。 接下来,看看本文代码所实现的ListView: 接下来,就开始UI的XML代码: main.xml代码如下,很简单,也不需要多做解释了:
阅读全文
摘要:GridView跟ListView都是比较常用的多控件布局,而GridView更是实现九宫图的首选!本文就是介绍如何使用GridView实现九宫图。GridView的用法很多,网上介绍最多的方法就是自己实现一个ImageAdapter继承BaseAdapter,再供GridView使用,类似这种的方法本文不再重复,本文介绍的GridView用法跟前文ListView的极其类似。。。。也算是我偷懒一下,嘻嘻嘻嘻。。。。 先来贴出本文代码运行的结果: 本文需要添加/修改3个文件:main.xml、night_item.xml、JAVA源代码。 main.xml源代码如下,本身是个GirdView,
阅读全文
摘要:一、Intent作用android 中intent是经常要用到的。不管是页面调转,还是传递数据,或是调用外部程序,系统功能都要用到intent。Android的有三个基本组件——Activity,Service和BroadcastReceiver,它们都是通过Intent机制激活的,而不同类型的组件有传递Intent的不同方式。(1) 要激活一个新的Activity,或者让一个现有的Activity执行新的操作,可以通过调用Context.startActivity()或者Activity.startActivityForResult()方法。这两个方法需要传入的Intent参数也称为Acti
阅读全文
摘要:一、 Activity介绍 activity可以算是开发者遇到的最频繁,也是android当中最基本的模块之一,在android的程序中,activity一般代表手机屏幕的一屏,如果把手机比作一个浏览器,那么activity就相当于一个网页, 对于Activity,关键是其生命周期的把握(如下图),正如图形所示,当我们第一次启动一个Acitivity1时,会按下列顺序调用Acitivity1的方法onCreate()->onStart()->onResume(),然后Acitivity1就会显示在手机屏幕上。这个时候如果你点击按钮或者做操作切换到了另外一个Activity2,Act
阅读全文
摘要:大家好,终于可以又写blog了,前段时间准备日语,现在终于完了.我们今天要讲的内容是Android中ListView中的实现.一共分为四个步骤,我将一一讲解:Step one:创建一个新的Android工程,命名为ListViewDemo.Step two:找到ListViewDemo.java,把我们习惯的继承Activity,改成ListActivity,如下:public class ListViewDemo extends ListActivity Step three:修改ListViewDemo.java代码方法如下:package com.android.test;import
阅读全文
摘要:大家好,我们这一节讲一下Android下的下拉菜单Spinner,就像是Swing的Combobox,html的<select>,由于手机画面有限,要在有限的范围选择项目,下拉菜单是比较好的选择. Android提供的Spinner Widget的下拉菜单已经非常好用了,样式也还适用.但我们本节的Demo的重点在于自定义下拉菜单里的样式,其关键在于调用setDropDownViewResource方法,以XML的方式定义下拉菜单要显示的模样.Step 1: 创建一个新的Android 工程, 我们命名为SpinnerDemo .Step 2 :打开layout 文件夹,找到main
阅读全文
摘要:现在我们上网几乎都会用百度或者谷歌搜索信息,当我们在输入框里输入一两个字后,就会自动提示我们想要的信息,这种效果在Android 里是如何实现的呢? 事实上,Android 的AutoCompleteTextView Widget ,只要搭配ArrayAdapter 就能设计同类似Google 搜索提示的效果.本例子先在Layout 当中布局一个AutoCompleteTextView Widget ,然后通过预先设置好的字符串数组,将此字符串数组放入ArrayAdapter ,最后利用AutoCompleteTextView.setAdapter 方法,就可以让AutoCompleteTex
阅读全文
摘要:大家好,我们今天这一节要介绍的是RadioGroup 的组事件.RadioGroup 可将各自不同的RadioButton ,设限于同一个Radio 按钮组,同一个RadioGroup 组里的按钮,只能做出单一选择(单选题).首先,我们先设计一个TextView Widget ,以及一个RadioGroup ,并将该RadioGroup 内放置两个RadioButton ,默认为都不选择,在程序运行阶段,利用onCheckedChanged 作为启动事件装置,让User选择其中一个按钮,显示被选择的内容,最的将RadioButton 的选项文字显示于TextView 当中.下面我们看一下效果图
阅读全文
摘要:大家好,我们今天这一节讲的是Android功能菜单的设计,程序里定义了两个菜单子项,一个是"关于",一个是"退出",当点击"关于"时候,新建一个Toast 提示,当点击"退出"时,我们将结束程序.程序里除了默认覆盖的onCreate 外之外,还需要另外新建两个类函数:onCreateOptionsmenu ()与onOptionsItemSelected (),前者为创建Menu 菜单的项目,后者则是处理菜单被选择运行后的事件处理.看一下效果图: 我们只在一个文件里作了改动,也就是MenuDemo.java ,代码
阅读全文
摘要:大家好,我们这一节要讲的内容是Android如何取得手机屏幕大小的例子.本节主要用了三个对象TextView ,Button ,以及DisplayMetrics ,其中Displaymetrics 是取得手机屏幕大小的关键类,这个例子非常的简单,当我们点击按钮,触发事件,在TextView 里显示手机屏幕的宽高分辨率. 看一下效果图:按钮触发前: 按钮触发后: 其中我们在res->layout->values->string.xml增加了两行如下(黑体)<?xml version="1.0" encoding="utf-8"?&g
阅读全文
摘要:大家好,我们这一节将简单的Button事件响应综合提示控件Toast的应用,在上节我们已经学会了在main.xml里定义了Button对象,今天我们来学习Button如何实现事件响应, Button按钮所触发的事件处理,我们称之为Event Handle,只不过在Android当中,按钮事件是由系统的Button.OnClickListener所控制,熟悉Java程序设计的读者对OnXxxListener应该不陌生.以下的Demo,我们将实现当点击Button时,TextView文字将发生改变,并在屏幕上出现一段时间的Toast提醒.让我们看一下效果图:点击按钮前: 点击按钮后: 我们主要在程
阅读全文
摘要:大家好,我们这一节讲一下Android对用五大布局对象,它们分别是FrameLayout(框架布局:不知道是不是这么翻译的),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局). FrameLayout: FrameLayout是最简单的一个布局对象。它被定制为你屏幕上的一个空白备用区域,之后你可以在其中填充一个单一对象 — 比如,一张你要发布的图片。所有的子元素将会固定在屏幕的左上角;你不能为FrameLayout中的一个子元素指定一个位置。后一个子元素将会直接在前一个子元素之上进行覆
阅读全文
摘要:就像dotnet开发要有MSDN,java开发要有jdk文档一样,在进行android开发之前,最好案头也要有相应的帮助文档。其实android sdk本身里面包含了很多开发帮助文档(英文版)。具体的使用步骤如下1.打开sdk下载帮助文档目录 我的安装目录在 C:\Program Files\Android\android-sdk-windows\docs2.使用浏览器打开index.html,打开后再上面的导航Tab按钮里面点击Dev-Guide链接(开发向导)这个页面左边的链接里面基本包括了android开发入门的方方面面介绍。比如userinterface(用户界面)->decla
阅读全文
摘要:我们写了HelloAndroid 之后,一直觉得没有写半行代码对不起自己,所以本节,我们将在HelloAndroid 基础之上,进行与TextView 文字标签的第一次接触.在此例中,将会在Layout 中创建TextView 对象,并学会定义res/values/string.xml 里的字符串常数,最后通过TextView 的setText 方法,在预加载程序之初,更改TextView 文字.首先看一下运行结果如下图: 首先"欢迎来到魏祝林的博客"这几个字是从什么地方来的呢,我们是在res->values->string.xml里面加了如下一句(黑体):&l
阅读全文
摘要:当我们创建完Android工程如(HelloAndroid)后,展开"Package Explorer"窗口里的"HelloAndroid"项名称,可以看见如下目录结构: res:放置应用 程序 用到的资源 文件。其包含(Drawable,layout,values等目录)。当这个目录下的文件发生变化时,src目录下面的R.java就会自动发生变化。assets:主要放置多媒体等数据 文件 。res/drawable:放置应用到的图片资源。res/layout:放置一些与UI相应的布局文件,都是xml文件。res/values:放置字符串,颜色,数组等常
阅读全文
摘要:开启Android工程 我们开启Eclipse环境来,在左上方的菜单上,选择[File->New->Project],会弹出[New Project]对话框.Eclipse是通用的剪辑环境,可根据你所安装的不同的插件而支持许多种类的工程的创建.点击[Android]资料夹下的[Android Project]对话框,点选"Browse.."按钮以选择[开启已经存在的工程](Create project from existing source).我们现选择F盘目录为[F:/Android/projects]中的HelloAndroid工程[F:/Android/
阅读全文
摘要:1. 安装JDK。注意这里只是安装JRE是不行的,需要安装JDK笔者是去 http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载了 JDK 6 Update 20。注: 根据http://www.eclipse.org/的官方信息,在windows 平台上安装了JDK 6 Update 21,然后运行Eclipse Helios (3.6) 会出现 crashing,需要进行一些设置 ( http://wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F#Oracle.2FS
阅读全文
摘要:从2010年下半年开始接触android,对此颇感兴趣,走了很多弯路,也做了个小东西练了下手,现在把自己收集的相关资料做个整理,有转帖的,也有原创的。希望对研究android的同行们,能有所帮助。1. Android是什么? Android 是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序 —— 移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。Android 作为谷
阅读全文