Unit3-Android程序设计基础_第1页
Unit3-Android程序设计基础_第2页
Unit3-Android程序设计基础_第3页
Unit3-Android程序设计基础_第4页
Unit3-Android程序设计基础_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Unit3 Android程序设计基础 本章目标n可以使用Eclipse进行简单的Android程序的开发; n可以掌握Android项目中的各个主要组成部分及作用; n可以掌握Android程序的主要开发模式; n可以掌握Activity与AndroidManifest.xml文件的配置。 命令:命令: adb push f:kugouxianjian.mp3 sdcard/xj.mp3 说明:将电脑中的某个文件复制到模拟器的说明:将电脑中的某个文件复制到模拟器的SDCARD中中命令:命令:adb pull mnt/sdcard/a.txt D: 说明:将手机卡中的某个文本文件复制到电脑说明

2、:将手机卡中的某个文本文件复制到电脑D盘盘push的作用和的作用和pull正好相反,正好相反, 是从电脑端向手机复制文件的。是从电脑端向手机复制文件的。命令:命令:Adb install c:abcaa.apk 说明:在模拟器上安装说明:在模拟器上安装Android应用程序应用程序ADB命令基本应用命令基本应用Activity nActivity实际上就是表示的是一个人机的交互程序,用于存放各个显示控实际上就是表示的是一个人机的交互程序,用于存放各个显示控件,也是件,也是Android的基本组成,所有的的基本组成,所有的Android项目都使用项目都使用Java语言进语言进行开发,所以每一个继

3、承了行开发,所以每一个继承了android.app.Activity的的Java类都将成为一类都将成为一个个Activity程序,而一个程序,而一个Android项目将由多个项目将由多个Activity程序所组成,而程序所组成,而所有的显示组件都必须放在所有的显示组件都必须放在Activity上才可以进行显示,上才可以进行显示,android.app.Activity类的继承结构如下:类的继承结构如下:java.lang.Object android.content.Context android.content.ContextWrapper android.view.ContextTheme

4、Wrapper android.app.Activity Activity类的常用方法 No.方法方法类型类型描述描述1public final View findViewById (int id)普通普通根据组件的根据组件的ID取得组件对象取得组件对象2public void setEnabled (boolean enabled)普通普通设置是否可编辑设置是否可编辑3public void setFocusable (boolean focusable)普通普通设置是否默认取得焦点设置是否默认取得焦点4public final void setProgress(int progress)普

5、通普通设置设置ProgresBar的进度的进度5public final void setSecondaryProgress(int secondaryProgress)普通普通设置第二进度条的进度设置第二进度条的进度6public Window getWindow()普通普通取得一个取得一个Window对象对象7public void setContentView(int layoutResID)普通普通设置显示组件设置显示组件8public void setContentView(View view)普通普通设置显示组件设置显示组件Android项目中的文件夹作用 No.文件夹文件夹描述描

6、述1src存放所有的*.java源程序2gen为ADT插件自动生成的代码文件保存路径,里面的R.java将保存所有的资源ID3Android 2.3.3表示现在使用的Android SDK的版本是2.3.3,如果建立项目时选择1.5,则此处为1.54assets可以存放项目一些较大的资源文件,例如:图片、音乐、字体等5res可以存放项目中所有的资源文件,例如:图片(*.png、*.jpg)、文本等6resdrawable-hdpi保存高分辨率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型7resdrawable-ldpi保存低分辩率图片资源,可以使用Res

7、ources.getDrawable(id)可以获得资源类型8resdrawable-mdpi保存中等分辨率图片资源,可以使用Resources.getDrawable(id)可以获得资源类型9reslayout存放所有的布局文件,主要是用于排列不同的显示组件,在Android程序中要读取此配置10resvalues存放一些资源文件的信息,用于读取文本资源,在本文件夹之中有一些约定的文件名称: arrays.xml:定义数组数据; colors.xml:定义表示颜色的数据; dimens.xml:定义尺度,可以使用Resources.getDimension()获得这些资源; strings.

8、xml:定义字符串,可以使用Resources.getString()或Resources.getText()方法获得这些资源; styles.xml:定义显示的样式文件;11resraw自 定 义 的 一 些 原 生 文 件 所 在 目 录 , 像 音 乐 、 视 频 等 文 件 格 式 ,Resources.getRawResource()方法可以获得这些资源;12resxml用户自定义的XML文件,所有的文件在程序运行时编译到应用程序之中,在程序运行时可以使用Resources.getXML()方法获取;Android项目中的文件作用 No.文件文件描述描述1Hello.java为Act

9、ivity程序,类似于Java程序中的主类2icon.png项目中所需要的图片资源文件,在drawable-hdpi、drawable-ldpi、drawable-mdpi分别保存不同分辩率的图片3main.xml配置所有的控件4strings.xml配置所有的资源信息5R.java此文件为自动生成并自动维护,当用户向drawable-hdpi、drawable-ldpi、drawable-mdpi文件夹中增加图片,或者在main.xml文件中配置控件以及在strings.xml文件中定义文本信息都会自动在此文件夹中生成一个唯一的ID,以供程序使用。6AndroidManifest.xml为A

10、ndroid的主要配置文件,用于配置各个组件或者是一些访问权限等7pertiesAndroid项目的属性定义文件编写Activity程序,操作组件package org.lxh.demo;import android.app.Activity;import android.os.Bundle;import android.widget.Button;import android.widget.TextView;public class Hello extends Activity Overridepublic void onCreate(Bundle savedInsta

11、nceState) super.onCreate(savedInstanceState);/ 调用父类的onCreate()方法super.setContentView(R.layout.main);/ 调用布局文件/ 取得在AndroidManifest.xml配置的组件TextView text = (TextView) super.findViewById(R.id.mytext);/ 设置此文本框的显示文字信息text.setText(“广东农工商职业技术学院);/ 取得在AndroidManifest.xml配置的组件Button but = (Button) super.findV

12、iewById(R.id.mybut) ;/ 设置按钮上的显示文字信息but.setText(按我,不过没用!) ;编辑valuesstrings.xml文件 n可以将所有要显示的文字信息直接在valuesstrings.xml文件中进行配置。n编辑valuesstrings.xml文件,加入两条新的内容 Hello World, Hello!myfirst广东农工商职业技术学院按我,不过没用!将strings.xml文件中的内容设置到文本控件 布局管理器的高度为屏幕高度从资源文件之中读取默认显示文字从资源文件之中读取默认显示文字从资源文件之中读取默认显示文字定义布局管理器,并增加组件 pac

13、kage org.lxh.demo;import android.app.Activity;import android.os.Bundle;import android.widget.Button;import android.widget.LinearLayout;import android.widget.TextView;public class Hello extends Activity Overridepublic void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);/ 调用父类的

14、onCreate()方法LinearLayout layout = new LinearLayout(this) ;/ 定义布局管理器layout.setOrientation(LinearLayout.VERTICAL) ;/ 垂直摆放所有组件TextView text = new TextView(this) ;/ 创建文本显示组件text.setText(super.getString(R.) ;/ 从资源文件之中设置显示文字Button but = new Button(this) ;/ 创建按钮but.setText(super.getString(R.stri

15、ng.msg) ;/ 设置显示文字layout.addView(text) ; / 增加组件layout.addView(but) ;/ 增加组件super.setContentView(layout);/ 设置默认布局管理器Android操作系统及模拟器使用简介模拟器创建模拟器创建Android系统桌面系统桌面拨号拨号功能建的使用功能建的使用程序程序浏览网页及多点触摸浏览网页及多点触摸活动应用活动应用系统设置,设置日期及时间系统设置,设置日期及时间/设置语言设置语言发送短信发送短信adb简介uadb的全称为的全称为Android Debug Bridge,就是起到调试桥的作用。主要,就是起到

16、调试桥的作用。主要功能有功能有:1.运行设备的shell(命令行)2. 管理模拟器或设备的端口映射 3.计算机和设备之间上传/下载文件4. 将本地apk软件安装至模拟器或android设备u常用命令:常用命令:1. 查看设备 * adb devices 2. 安装软件* adb install 3. 卸载软件* adb uninstall 4. 登录设备shell* adb shell 5. 上传或下载文件 * adb push/pull 6. 显示帮助信息 * adb help 开发第一个Android应用打开Eclipse,新建项目(点击FileNewProject),在项目列表中展开An

17、droid目录,选择Android Project,如下图:开发第一个Android应用开发第一个Android应用点击”finish”即可完成项目的创建,创建后的项目已经是一个可运行的Android应用,我们可以通过下面方式运行此应用:点击工具栏上机器人形状的虚拟设备管理器(简称“AVD“),如下:开发第一个Android应用在打开的虚拟设备管理器中创建一个虚拟手机:开发第一个Android应用在项目上右键点击run as Android application,如下图:Android应用程序架构src/ java原代码存放目录原代码存放目录gen/ 自动生成目录自动生成目录gen 目录中存

18、放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。 这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的xml界面文件、图标与常量,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。res/ 资源资源(Reso

19、urce)目录目录在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。具体请看ppt下方备注栏。assets资源目录资源目录Android除了提供/res目录存放资源文件外,在/assets目录也可以存放资源文件,而且/assets目录下的资源文件不会在R.java自动生成ID,所以读取/assets目录下的文件必须指定文件的路径,如:file:/android_asset/xxx.3gpAndroidManifest.xml 项目清单文件项目清单文件 这个文件列出了应用程序所提供的功能,以后你开发好的各种组件需要在该文件中进行配置,如果应用使用到了系统内置的应用(如电

20、话服务、互联网服务、短信服务、GPS服务等等),你还需在该文件中声明使用权限。perties 项目环境信息项目环境信息,一般是不需要修改此文件Android应用程序界面开发l编程式界面开发编程式界面开发每一个屏幕由一个Activity代表每个Activity中需要设置一个View组件一个ViewGroup组件可以放置更多的View组件TextView tv=new TextView(this);tv.setText(用户名:);EditText edit=new EditText(this);Button btn=new Button(this);btn.setText(

21、保存);LinearLayout group=new LinearLayout(this);/设置方向group.setOrientation(LinearLayout.VERTICAL);/添加View到ViewGroup中group.addView(tv);group.addView(edit);group.addView(btn);/把ViewGroup通过setContentView方法设置到Activity中this.setContentView(group);Android应用程序界面开发l声明式界面开发声明式界面开发Android支持声明式界面开发,使用xml标记来声明界面。界面

22、布局位置放置在layout目录中,内容大致如下:在程序中可以把一个Activity的内容设置为布局文件对应的view。this.setContentView(R.layout.ui);UI控件事件处理在View类中,提供了setOnXXX系列的方法,可以用设置某一个View组件的事件监听对象(监听器)。主要如下:setOnClickListener(l)setOnLongClickListener(l)setOnFocusChangeListener(l)setOnKeyListener(l)setOnTouchListener(l)setOnCreateContextMenuListener(l)事件监听对象的onClick等方法中,包括了事件响应的代码。btn.setOnClickListener(new OnClickListener() public void onClick(View v) / 事件响应代码);或者或者MainActivity implements OnClickListenerpublic void onClick(View v) / 事件响应代码public void onCreate(.).btn.setOnClickList

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论