Android讲义Word文件下载.docx

上传人:b****1 文档编号:394133 上传时间:2023-04-28 格式:DOCX 页数:23 大小:27.89KB
下载 相关 举报
Android讲义Word文件下载.docx_第1页
第1页 / 共23页
Android讲义Word文件下载.docx_第2页
第2页 / 共23页
Android讲义Word文件下载.docx_第3页
第3页 / 共23页
Android讲义Word文件下载.docx_第4页
第4页 / 共23页
Android讲义Word文件下载.docx_第5页
第5页 / 共23页
Android讲义Word文件下载.docx_第6页
第6页 / 共23页
Android讲义Word文件下载.docx_第7页
第7页 / 共23页
Android讲义Word文件下载.docx_第8页
第8页 / 共23页
Android讲义Word文件下载.docx_第9页
第9页 / 共23页
Android讲义Word文件下载.docx_第10页
第10页 / 共23页
Android讲义Word文件下载.docx_第11页
第11页 / 共23页
Android讲义Word文件下载.docx_第12页
第12页 / 共23页
Android讲义Word文件下载.docx_第13页
第13页 / 共23页
Android讲义Word文件下载.docx_第14页
第14页 / 共23页
Android讲义Word文件下载.docx_第15页
第15页 / 共23页
Android讲义Word文件下载.docx_第16页
第16页 / 共23页
Android讲义Word文件下载.docx_第17页
第17页 / 共23页
Android讲义Word文件下载.docx_第18页
第18页 / 共23页
Android讲义Word文件下载.docx_第19页
第19页 / 共23页
Android讲义Word文件下载.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Android讲义Word文件下载.docx

《Android讲义Word文件下载.docx》由会员分享,可在线阅读,更多相关《Android讲义Word文件下载.docx(23页珍藏版)》请在冰点文库上搜索。

Android讲义Word文件下载.docx

类似的,为了在资源配置XML文件中引用Android资源,例如,为了引用message_1字符串资源,你可以使用:

@string/message_1

而为了引用图片资源png0237.png资源,你可以使用:

@drawable/png0237

一般的,在Java程序代码中,你可以使用如下格式来引用Android程序资源:

[package.]R.type.name

类似的,在XML资源配置文件中,可以使用如下的格式来引用Android程序资源:

@[package:

]type/name

其中的type对应R.java文件中的资源类型,包括:

Drawable.id.layout.string.attr.plurals.string-array

4、深入分析Activity

4.1、Activity的生命周期

调用Activity的finish()方法onPause()onStop()onDestroy()来结束Activity。

android将重新调用之前被覆盖的Activity的onCreate()onStart()onResume()

若因为资源紧缺而导致Activity被kill,Android系统一定会调用Activity的onSaveInstanceState()方法,当Android系统在恢复一个被Kill的Activity时会调用onRestoreInstanceState()回调函数)。

5.1、使用基于XML的布局

修改res/layout/main.xml:

<

?

xmlversion="

1.0"

encoding="

utf-8"

>

LinearLayoutxmlns:

android="

android:

layout_width="

fill_parent"

layout_height="

orientation="

vertical"

>

<

Buttonxmlns:

android:

id="

@+id/button"

text="

@string/button_text"

/>

/LinearLayout>

同时,修改res/values/strings.xml:

resources>

stringname="

app_name"

5_1_XMLLayout<

/string>

button_text"

点击<

/resources>

在这个文件中,我们定义了button_text引用。

在这个接口中,只有一个方法:

onClick(Viewv)。

为此,我们对XMLLayoutActivity.java程序代码做如下修改:

packageteaching.android.xml_layout_5_1;

importjava.util.Date;

importandroid.app.Activity;

importandroid.os.Bundle;

importandroid.view.View;

importandroid.widget.Button;

publicclassXMLLayoutActivityextendsActivity

implementsView.OnClickListener{

Buttonbtn;

/**Calledwhentheactivityisfirstcreated.*/

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btn=(Button)this.findViewById(R.id.button);

btn.setOnClickListener(this);

}

publicvoidonClick(Viewv){

//TODOAuto-generatedmethodstub

btn.setText(newDate().toString());

}

XMLLayoutActivity实现了View.OnClickListener接口,同时,我们设置按钮监听点击事件,并在点击事件中修改显示在按钮上的文字为当前的日期时间。

运行该修改后的程序:

5.2、Android基本组件

5.2.1、Button

(1)android:

text

设置在Button上要显示的文字。

可以是一个字符串常量或对一个字符串资源的引用。

(2)android:

textColor

设置显示在Button上的文字的颜色。

可以是对一个颜色资源的引用,或者是这些形式的颜色值:

"

#rgb"

、"

#argb"

#rrggbb"

#aarrggbb"

(3)android:

textSize

设置显示在Button上的文字的大小。

可以是一个常数加单位,例如,15px,20sp等,也可以是对单位度量资源的引用。

(4)android:

textStyle

设置显示在Button上的文字的风格,可用的值:

bold,italic,bolditalic。

(5)android:

typeface

设置显示在Button上的文字的字体。

目前Android只支持如下的字体:

normal,sans,serif,monospace。

但是,你可以在程序代码中使用任何你需要的字体。

以上所介绍的这些属性是从android.widget.TextView中继承的,除此之外,你还可以使用从android.view.View中继承的XML配置属性。

下面介绍这些属性。

(6)android:

id

设置Button的id属性以便在程序代码中可以引用该组件。

(7)android:

background

设置Button的背景。

可以是对一个drawable资源的引用,也可以是形如"

的颜色值。

(8)android:

clickable

设置该按钮是否可以响应点击事件。

可选值:

true、false。

(9)android:

onClick

设置按钮被点击时要调用的处理函数。

(10)android:

visibility

设置按钮是否显示在屏幕上。

(11)android:

padding、android:

paddingTop、android:

paddingBottom、android:

paddingLeft、

android:

paddingRight

设置组件的内边界,类似HTML/CSS的padding。

(12)android:

gravity

设置按钮的文字内容在按钮上的显示对齐方式。

可取值:

top、right、left、center等。

Android值支持三种字体:

sans,serif,monospace,默认为sans,

5.2.2、TextView

TextView类似其他GUI的Label,用于显示一个字符串,显示在TextView中的字符串是不可编辑的。

其实,Button组件的XML配置都是从TextView和View中继承来的,因此,TextView的属性与Button组件的XML配置属性是类似的。

5.2.3、ImageView

ImageView组件用于显示一幅图片。

ImageView常用XML配置属性包括:

maxHeight

用于指定组件的最大高度。

maxWidth

用于指定组件的宽度。

scaleType

控制显示在ImageView中的图片应当如何改变大小或移动以适应ImageView组件的大小。

可用的值及其含义:

center:

图片位于视图中间,但不执行缩放;

centerCrop:

按统一比例缩放图片(保持图片的尺寸比例)便于图片的两维(宽度和高度)等于或者大于相应的视图的维度;

centerInside:

按统一比例缩放图片(保持图片的尺寸比例)便于图片的两维(宽度和高度)等于或者小于相应的视图的维度;

fitCenter:

按比例缩放图片达到组件的大小,并使图片居中显示;

fitEnd:

按比例缩放图片达到组件的大小,并使图片居末显示;

fitStart:

按比例缩放图片达到组件的大小,并使图片居前显示;

fitXY:

不按比例缩放图片使之正好达到组件的维数;

matrix:

当绘制时使用图片矩阵缩放;

src

指定显示在组件中的图片。

必须是对一个图片资源的引用。

contentDescription

设定图片的描述性文字。

应用举例。

5.2.4、EditText

EditText是可编辑的文本组件,与TextView组件类似,只是提供了编辑功能。

它的XML配置属性都是从TextView及View中继承来的,如下的几个XML配置属性可能有用:

autoText

设置是否对输入的文字进行自动拼写检查。

只能取值“true”或者“false”。

captalize

设置是否对输入的文字改为大写。

digits

设置是否只能输入数字。

singleLine

设置是否可以输入多行。

hint

设置当输入框为空时,在输入框中显示的提示信息。

inputType

设置放置在EditText组件中的文字类型。

取值包括:

none、text、textCapCharacters、textCapWords、textUri、number等。

举个例子。

5.2.5、CheckBox

CheckBox组件就是在其他GUI组件我们常用的“复选框”,它继承了TextView和View组件的XML属性。

该组件的常用方法:

(1)isChecked()

检查该复选框是否被勾选。

(2)setChecked(Booleanchecked)

设置该复选框的选中状态。

(3)toggle()

将复选框的状态置反。

5.2.6、RadioButton

RadioButton就是我们在其他GUI中使用单选按钮。

一般情况下,我们总是将RadioButton与RadioGroup结合使用:

使得在一组RadioButton中只有一个可以被选中。

通过RadioGroup我们控制RadioButton的选中状态。

常用的RadioGroup的方法:

(1)check(intrb)

检查指定rb的选中状态。

(2)clearCheck()

清除所有RadioButton的选中状态,因此,调用该方法后,没有RadioButton被选中。

(3)getCheckedRadioButtonId()

返回被选中的RadioButton的id,若没有RadioButton被选中,则返回-1。

5.3.1、LinearLayout

LinearLayout是一个Box,即,一个盒子,放置在其中的组件要么按列、要么按行的方式进行顺序布局。

下面介绍LinearLayout的常用XML配置属性。

orientation

设置LinearLayout容器布局组件的方式:

要么按行要么按列。

只能取值:

horizontal、vertical。

设置布局在LinearLayout容器内的组件的对齐方式。

top、bottom、left、right、center、start、end等。

设定该LinearLayout的id,以便可以再程序中引用该容器。

这个属性是从View中继承来的。

(4)其他从View中继承来的属性,包括android:

backgroud、android:

visibility等。

同时,对于布局在LinearLayout中的组件,LinearLayout也提供如下这些XML配置属性,用以告知LinearLayout如何放置这些组件。

这些配置属性是在容器的LinearLayout.LayoutParams配置属性列表中说明的:

点击黄色标注的链接,然后展开“Fromclassandroid.view.ViewGroup.LayoutParams”:

layout_width和android:

layout_height

这两个属性是为放置在LinearLayout容器的组件提供的:

所有放置在LinearLayout中的组件都必须通过android:

layout_height属性来告知LinearLayout如何对组件进行布局。

有三个可选的值:

match_parent/fill_parent----占满父容器的所有空间;

wrap_content----组件将只占用为了正确显示器内容所需的空间;

一个常数值和单位,例如,100px,表示该组件占用100个像素宽。

可用的单位:

px(像素):

屏幕上的点。

in(英寸):

长度单位。

mm(毫米):

pt(磅):

1/72英寸。

dp(与密度无关的像素):

一种基于屏幕密度的抽象单位。

在每英寸160点的显示器上,1dp=1px。

dip:

与dp相同,多用于Google示例中。

sp(与刻度无关的像素):

与dp类似,但是可以根据用户的字体大小首选项进行缩放。

layout_gravity

设置组件在容器中的布局方式。

layout_weight

设置组件占用容器的空余显示空间的比例。

layout_margin、android:

layout_marginTop、android:

layout_marginBottom、

layout_marginLeft、android:

layout_marginRight

设置组件的外边界,类似于HTML/CSS中的margin。

5.3.2、RelativeLayout

RelativeLayout,顾名思义,就是相对布局:

一个组件相对于另一个组件的位置来布局组件。

例如,将组件A布局在组件B的右下方。

RelativeLayout为布局在其中的组件提供了如下的XML布局属性,其含义是不言而喻的:

5.3.3、TableLayout

TableLayout很像HTML中的Table标签,用于按行和列的方式来布局组件。

TableLayout与TableRow组件协同工作来完成对组件的布局。

TableLayout的XML配置属性:

其中:

collapseColumns,指定要隐藏的列,以0为起始,多个列用“,”分隔;

shrinkColumns,指定当列空间不够时,自动缩小的列,以0为起始,多个列用“,”分隔;

stretchColumns,指定当列空间有多余时,自动延展的列,以0为起始,多个列用“,”分隔。

对于布局在TableLayout中的组件,更准确的说是布局在TableRow中的组件,可以使用如下的由TableRow.LayoutParams提供的XML配置属性进行配置:

其中,android:

layout_column指定组件在TableRow中的列位置;

layout_span指定组件占用几列。

5.3.4、FrameLayout

FrameLayout以层叠的方式的布局组件:

每次只能显示其中一个。

这有点类似扑克牌,你只能看到最上面的那张。

FrameLayout为布局在其中的组件提供了一个XML配置属性:

用以设置FrameLayout容器中的组件的对齐方式。

5.3.5、ScrollView

ScrollView也是一个容器,它是FrameLayout的子类,它的主要作用是可以包括多余屏幕可以显示的内容,ScrollView将提供垂直滚动。

ScrollView提供了如下的XML配置属性:

6、理解和使用Intent

在基于HTML的页面程序中,我们使用“超链接”来实现页面之间的跳转。

之前我们也提到过,Android应用程序界面是由一个到多个Activity组成的,一个Activity相当于HTML的一个页面,那么,当一个Android应用程序具有多个有相互联系的Activity时,它们之间如何实现跳转呢?

这就是通过使用我们在这里将要介绍的Intent来实现的。

6.1、Intent应用入门

6.1.1、Intent入门例子

6.1.2、课堂练习

编写与例子相似的、能通过Intent打开新的Activity的程序。

6.2、细说Intent

可以指明的条件包括:

action、data和category。

6.2.1、Intent的action

我们可以为我们自己创建的Activity定义一个用于打开这个Activity的action,这个action是一个字符串常量,你可以任意定义,但是,Android建议的做法是,在命名action是,采用“Java包名+特定串”的形式来命名action。

例如,我们为Intent_02_Activity定义的action:

teaching.android.chapter6.intent_01.A1,其中,teaching.android.chapter6.intent_01是包名,而A1是特定的名称。

需要强调的是,Activity与action不一定是1对1的对应关系,也就是说,可能多个Activity对应同名的action,这在Android中是允许的,当这种情况出现时:

Android平台将弹出一个对话框,让你选择满足条件的哪个Activity来运行。

Android平台的Intent类已经预先定义了一些action:

其中的每个action都有确定的含义,例如,ACTION_MAIN的含义:

它表示包含这个action的Activity是android应用程序的入口Activity,也就是,当运行某个Android应用程序时,当首先打开包含这个action的Activity。

这些action可以用来打开系统已经包含的一些Activity,例如,电话拨号Activity。

当然,你也可以在程序程序直接使用这些action作为你的Activity的action。

为了指明一个Intent的action,有两种方式:

(1)通过Intent类的构造函数newIntent(Stringaction)及newIntent(Stringaction,URIuri)。

(2)通过Intent类的setAction(Stringaction)函数。

6.2.2、Intent的data

在通过隐式Intent打开Activity时,除了指明Activity的action外,我们经常还指明Activity所支持的data。

就像在HTML中那样,我们除了指明是GET、PUT、POST动作外,还经常需要指明页面的URI地址。

在Android中,我们通过Intent的data指明要操作的数据,Android的data也是通过URI来指明的。

URI的标准形式:

scheme:

//host:

port/path或者

port/pathPattern或者

port/pathPrefix

例如,在如下的URI中:

content:

//com.example.project:

200/folder/subfolder/etc

scheme为"

content"

,host为"

com.example.project"

,port为"

200"

,path为"

folder/subfolder/etc"

通过<

activity>

标签的子标签<

intent-filter>

的<

data>

子标签,我们可以指定某个Activity的data属性,其中包括:

host、mimeType、path、pathPattern、pathP

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2