ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:521.99KB ,
资源ID:28412419      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28412419.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Android 学习开发指南.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Android 学习开发指南.docx

1、Android 学习开发指南Android开发- Eclipse的工作目录 打开Eclipse的时候首先弹出的对话框 通过Workspace里面的路径,可以找到Eclipse项目存放之处- Eclipse的导入项目 File Import - Eclipse的输出项目 第一种 File - Export - 第二种 从Package Explorer 选中项目名 - 单击鼠标右键选择 Copy - 鼠标右键 粘贴 到其他存放之处 - Eclipse快捷键 Alt + “/” 自动匹配符合的关键字- Android中.XML文件首布局属性必须有- 标签定义规范 打完标签的开头,立即补上结尾 布局

2、模式必须以为开头,为结尾 例 例 例 独立控件的可以有两种方式结尾 1. 2.- 黄色的波浪线 可以运行,但android或者其他程序语言不推荐这么写代码 在.java源程序中变量或者方法未使用- 红色的波浪线 代码错误提示,需要更改正确- main.xml与String.xml String.xml 键值对 一:国际化,只需要提供一个string.xml文件,把里面的汉字信息都修改为对应的语言(如,English),再运行程序时,android操作系统会根据用户手机的语言环境和国家来自动选择相应的string.xml文件,这时手机界面就会显示出英文。这样做国际化非常的方便。 二:为了减少应用

3、的体积,降低数据的冗余。假设在应用中要使用我们一直在努力这段文字10000次,如果在每次使用时直接写上这几个字,这样下来程序中将有70000个字,这70000个字占136KB的空间。而由于手机的资源有限,其CPU的处理能力及内存是非常有限的, 136KB 对手机内存来说是个不小的空间,我们在做手机应用是一定要记住“能省内存就省内存”。而如果将这几个字定义在string.xml中,在每次使用到的地方通过Resources类来引用该文字,只占用到了14B,因此对降低应用体积效果是非常有效地.当然我们可能在开发时可能并不会用到这么多的文字信息,但是,作为手机应用开发人员,我们一定要养成良好的编程习惯

4、。 获取string.xml文件里面的值有几个不同的地方 1.在AndroidManifest.xml与layout等xml文件里: android:text=string/resource_name 2.在activity里: 方法一: this.getString(R.string.resource_name); 方法二: getResources().getString(R.string.resource_name); 3.在其他java文件(必须有Context或pplication) 方法一: context.getString(R.string.resource_name); 方法

5、二: application.getString(R.string.resource_name); 下图 介绍几种常见的资源XML文件- 布局模式 LinearLayout 线性布局 Android: orientation=” 定义控件布局的方向:rientein Vertical v:tikl 垂直方向 Horizontal hrizntl 水平方向 Android:layout_width=” 指定控件的宽 Android:layout_height=” 指定空间的高 Fill_parent Wrap_content Match_parent 在android2.2之后fill_pare

6、nt改成match_parent Android:layout_weight=” 权重 值越小优先级越大 在layout_width设置为fill_parent的时候,layout_weight所代表的是你的控件要优先尽可能的大,但这个大是有限度的,即fill_parent 在layout_width设置为wrap_content的时候,layout_weight所代表的是你的控件要优先尽可能的小,但这个小是有限度的,即wrap_content TableLayout 表格布局 内容介绍 TableLayout,表格布局采用行列形式管理UI组件,TableLayout不需要明确地声明有多少行和

7、列,而是通过添加TableRow、其它组件来控制表格的行数、列数。 每次向TableLayout添加一个TableRow,就是在向表格添加一行,TableRow也是容器,可以向TableRow中添加组件,每添加一个组件,即是添加一列。 如果直接向TableLayout添加组件,则认为这个组件占用一行。 表格布局中列的宽度即是每一列中最宽的组件的宽度。 属性 android:collapseColumns klpsklm 隐藏指定列 android:str etchColumns stretklm 自动伸展指定列 android:shrinkColumns rikklm 自动收缩指定列 行 里面

8、的控件数决定列数 控件的width默认为fill_parent,可更改控件的height默认为wrap_content,可以更改 Android:layout_colunmn=“1”将控件放在标号为1的列上,标号是从0开始的 Android:layout_span 表示一个控件占几列空间 在tableLayout里面不可以添加另外的布局模式 - - - 1.Main.xml添加按钮控件- 2.如何从.java中获取Button的资源Button btn = (Button)findViewById(R.id.btn);- 3.如何在.java中添加按钮的监听事件方法一: btn.setOnCl

9、ickListener(new View.OnClickListener() Override public void onClick(View v) / Toast是Android中用来显示显示信息的一种机制,Toast没有焦点,而且Toast显示的时间有限,过一定的时间就会自动消失。 Toast.makeText(Listener_DemoActivity.this, 你好!, Toast.LENGTH_SHORT); );方法二:btn.setOnClickListener(new btn_listener();private class btn_listener implements

10、OnClickListener Override public void onClick(View v) / TODO Auto-generated method stub Toast.makeText(Listener_DemoActivity.this, 你好!, Toast.LENGTH_SHORT); - RelativeLayout 相对布局 一句话概括 一个控件的布局位置,它决定于它和周围控件的关系 相对布局与其他布局的区别 线性布局(LinearLayout):children排列成一行多列或者一列多行的形式,应该是应用程序中最常用的布局方式,它提供了控件水平或者垂直排列的模型,

11、同时我们可通过设置子控件的weight布局参数控制各个控件在布局中的相对大小。 TableLayout:children按照行列的排序,类似于html的table;模型以行列的形式管理子控件,每一行为一个TableRow的对象,也可为一个View的对象。TableRow可添加子控件,每添加一个子控件为一列。 相对布局(RelativeLayout):children的位置是与它周围的控件相关的或者和他们的parent位置相关,参照控件可以是父控件,也可以是其他子控件,但被参照的控件必须要在参照它的控件之前定义。相对布局模型所涉及的属性设置比较多,但并不复杂。 常见属性/ 相对于给定ID控件an

12、droid:layout_above 将该控件的底部置于给定ID的控件之上;android:layout_below 将该控件的底部置于给定ID的控件之下;android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘对齐;android:layout_alignBaseline 将该控件的baseline与给定ID的baseline对齐;android:layout_alignTop 将该控件的顶部边缘与给定ID的顶部边缘对齐;android:layout_alignBott

13、om 将该控件的底部边缘与给定ID的底部边缘对齐;android:layout_alignLeft 将该控件的左边缘与给定ID的左边缘对齐;android:layout_alignRight 将该控件的右边缘与给定ID的右边缘对齐;/ 相对于父组件android:layout_alignParentTop 如果为true,将该控件的顶部与其父控件的顶部对齐;android:layout_alignParentBottom 如果为true,将该控件的底部与其父控件的底部对齐;android:layout_alignParentLeft 如果为true,将该控件的左部与其父控件的左部对齐;andr

14、oid:layout_alignParentRight 如果为true,将该控件的右部与其父控件的右部对齐;/ 居中android:layout_centerHorizontal 如果为true,将该控件的置于水平居中;android:layout_centerVertical 如果为true,将该控件的置于垂直居中;android:layout_centerInParent 如果为true,将该控件的置于父控件的中央;- FrameLayout 单帧布局 ViewGroup将它的子试图元素都放在布局的左上角,并覆盖在前一子控件的上层。如果绝对布局不指定坐标位置,子试图将会类似于单帧布局那样层

15、叠放置。- AbsoluteLayout 绝对布局 以坐标的方式定位子控件。 设置元素的位置的属性是:android:layout_x=”.px(dp)”android:layout_y=”.px(dp)”- 资源文件的引用 字符串资源的引用res/values/strings.xml中的资源引用有3中形式:在.xml中引用:string/string_name在.java代码中应用:R.string.string_name在代码中获取图片:getResources().getString(R.string.string_name)或getResources().getText(R.strin

16、g.string_name) 图片资源的引用res/drawable中的资源引用有3中形式:在.xml中引用:drawable/image_name在.java代码中应用:R.drawable.image_name在代码中获取图片:getResources().getDrawable(R.string.drawable _name)或getResources().openRawResource(R.string.drawable _name) 颜色资源的引用res/values/colors.xml中的资源引用有3种形式:在.xml中引用:color/color_name在.java代码中应用

17、:R.string.color_name在代码中获取图片:getResources().getColor(R.string.color_name) 系统资源的引用Android平台自身提供了一些资源文件,如:字符串:android.R.String.httpErrorBadUrl或android:string/httpErrorBadUrl颜色:android.R.darker_gray或android.graphics.Color.darker或android:color/darker_gray图片:android.R.drawable.ic_media_pause或android:draw

18、able/ic_media_pause- Intent与Activity Activity概述Android中的Activity主要用于构建和用户进行交互的界面应用程序。一个Android应用程序通常由多个Activity组成。Activity的主体包括两个主要部分:一个是Content(data);另外一个是响应用户交互事件的行为。在Activity中通过onCreate(Bundle)方法来初始化Activity,通过setContentView(int ID)方法来设置UI布局所使用的Layout资源,通过findViewById(int ID)方法来获得对应的视图资源。 创建Activ

19、itySuperClass android.app.ActivityAlt+Shift+S 重载onCreate()setContentView(); Intent Intent是一种运行时绑定(runtime binding)机制,它能在程序运行的过程中连接两个不同的组件,是应用程序之间通信的信鸽。 如何利用Intent进行界面跳转Intent intent = new Intent();Intent.setClass(当前类名.this,将要跳转的类名.class);startActivity(intent);- 类的定义修饰符 class 类名 成员定义;- 类的继承 Java继承是使用

20、已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。- 类的接口 Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。 接口的两种含义:一,Java接口,Java语言中存在的结构,有特定的语法和结构;二,一个类所具有的方法的特征集合,是一种逻辑上的抽象。前者叫做“Java接口”,后者叫做“接口”。- - 浅谈Activity的生命周期- - 当一个Activity01被创建的时候需要调用以下3个方法

21、Activity01的 onCreate() 当这个Activity没有调用onDestroy()方法进行销毁的时候,此方法仅会被调用一次 onStart() onResume()- 当向另外一个Activity02进行跳转的时候会调用以下方法 之前Activity01的 onPause() 当前Activity02的 onCreate() onStart() onResume() 之前activity01的 onStop()- 当点击Back键让Activity02返回到之前Activity01的时候会调用以下方法 当前Activity02的 onPause() 之前Activity01的

22、onRestart() onStart() onResume() 当前Activity02的 onStop() onDestroy()- Menu菜单的创建 1、复写Activity的onCreateOptionsMenu(Menu menu)方法 2、调用menu的add()方法添加菜单项(MenuItem),可以调用MenuItem的setIcon()方法来为菜单设置图标 3、当菜单项()被选择时,我们可以通过覆盖Activity的onOptionsItemSeleted()方法来响应事件- 点击Button,显示Menu 只需再监听事件里加上这句代码 openOptionsMenu();

23、- Menu的案例代码package com.example.menudemo;import android.os.Bundle;import android.os.Handler;import android.app.Activity;import android.content.Context;import android.util.AttributeSet;import android.view.InflateException;import android.view.LayoutInflater;import android.view.LayoutInflater.Factory;im

24、port android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class MenuActivity extends Activity Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedIn

25、stanceState); setContentView(R.layout.main); / 获取Button的资源 Button btn = (Button) findViewById(R.id.menubtn); / 给Button绑定监听事件 btn.setOnClickListener(new btn_menuListener(); / 按钮事件内容 class btn_menuListener implements OnClickListener Override public void onClick(View v) / TODO Auto-generated method stu

26、b / 打开菜单 openOptionsMenu(); / 复写OnCreateOptionsMenu()方法来绘制Menu Override public boolean onCreateOptionsMenu(Menu menu) / TODO Auto-generated method stub / menu.add()里面有四个参数依次是: / 第一个,菜单项的组别。 / 第二个,菜单项的ID。是menu识别编号,供识别menu用的。很重要。 / 第三个,菜单项的顺序。这个参数的大小决定菜单出现的先后顺序。顺序是参数由小到大,菜单从左到右,从上到下排列。一行最多三个。 / 第四个,菜单

27、项显示的文本。 menu.add(0, Menu.FIRST, 0, 注册).setIcon(R.drawable.ic_menu_add); menu.add(0, Menu.FIRST + 1, 1, 关于).setIcon(R.drawable.ic_menu_about); menu.add(0, Menu.FIRST + 2, 2, 退出).setIcon(R.drawable.ic_menu_quit); setMenuBackground(); return true; / 设置menu菜单的背景 protected void setMenuBackground() getLay

28、outInflater().setFactory(new Factory() Override public View onCreateView(String name, Context context, AttributeSet attrs) if (name.equalsIgnoreCase(com.android.internal.view.menu.IconMenuItemView) try / Ask our inflater to create the view LayoutInflater f = getLayoutInflater(); final View view = f.createView(name, null, attrs); new Handler().post(new Runnable() public void run() view.setBackgroundResource(R.drawable.s0_music_list_bg); ); return view; catch (InflateException e) ca

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1