返回顶部
首页 > 资讯 > 移动开发 >android手机编程 第二讲
  • 108
分享到

android手机编程 第二讲

Android 2022-06-06 13:06:49 108人浏览 八月长安
摘要

Android手机编程 第二讲 文章目录android手机编程 第二讲0. 学习目标:1. Android 项目目录结构2. 通用的资源访问3.

Android手机编程 第二讲 文章目录android手机编程 第二讲0. 学习目标:1. Android 项目目录结构2. 通用的资源访问3. 字符串、颜色、尺寸应用4. Darwable资源5.Android项目布局文件6. AndroidManifest.xml项目配置7.题目记录 0. 学习目标:

​ 1.能够使用Android中颜色和字符串资源的调用方法和Android中XML和图片资源的调用方法。

​ 2.熟记Android项目中各种资源的功能。

​ 3.列举Android项目的项目结构和Android项目中使用的资源类型。

Android 项目结构目录

1. Android 项目目录结构

(1)res目录

① drawable-*dpi(比如ldpi,hdpi,mdpi,xdpi)

定义Android应用中需要的不同分辨率的资源文件

② values

Android应用界面上需要显示各类文本标签的文字信息(strings,styles,colors)

(2)res资源目录

① layout:Android定义的界面布局文件

② Menu:存放系统菜单项和上下文菜单项

2. 通用的资源访问

基于Java代码访问资源文件

[.]R.

在XML配置文件中访问资源

@[:]

3. 字符串、颜色、尺寸应用

资源列表

字符串资源、颜色资源、尺寸资源,存放在XML文件内,位于/res/values目录下。

资源类型 资源文件默认名 R类中名称
字符串资源 /res/values/strings.xml R.string
颜色资源 /res/values/colors.xml R.color
尺寸资源 /res/values/dimens.xml R.dimen
Boolean常量 /res/values/bools.xml R.bool

颜色表示方法

使用Color类常量

Int color = Color.BLUE

使用Color类的静态方法argb

Int color = Color.argb(127,255.0,255)

fff000 (#+6位)

res和assets对比

res被映射到R.java。基于资源ID直接访问

assets需要通过资源管理器访问

res不可以建子目录,assets可以有目录结构

读取res/raw下的文件资源,通过Activity 的 getResources()方法

InputStream is = getResources();
openRawResources(R.id.filename)

assert通过assertmanager

AsserManager am = getAssets;//通过当前Activity的getAsset()方法
InputStream is = am.open("filename")
4. Darwable资源

(1)Drawable资源

① 主要格式有*.png、.jpg、*.gif等

② 图片放入/res/drawable-XXX目录下

③ 资源文件在R.java资源类中生成该资源的索引

(2)Drawable资源类型

① StateListDrawable资源(动态切换背景)

② LayerDrawable资源(图层叠加)

③ ShapeDrawable资源(绘图)

④ ClipDrawable资源

⑤ AnimationDrawable资源

5.Android项目布局文件

① 定义用户界面上各个组件之间的组织结构

② XML格式文件,Android系统负责初始化

③ 实现界面布局和逻辑代码分离

④ 修改和更新界面非常简便,无需修改代码

⑤ 布局文件是树形结构,使用根节点

⑥ 一般在布局控件中放置界面显示组件LinearLayout中放入textview文本标签

⑦ 通过节点属性设置界面显示界面组件的属性:大小、颜色、边距等

LinearLayout

orientation:vertical(垂直排列)/horizontal(水平排列)

layout_weight :是线性布局(Linelayout)的一个独特比例分配属性。使用此属性设置权重,然后按照比例对界面进行空间的分配,公式计算是:控件宽度=控件设置宽度+剩余空间所占百分比宽幅

a. 相对于父空间

XML属性 说明
layout_alignParentBottom 当前控件底端与父控件的底端对齐
layout_alignParentLeft 当前控件左端与父控件的左端对齐
layout_alignParentRight 当前控件右端与父控件的右端对齐
layout_alignParentTop 当前控件上端与父控件的上端对齐
layout_centerHorizontal 当前控件位于父控件的横向中间位置(水平方向上的中间)
layout_centerVertical 当前控件位于父控件的纵向中间位置(平面上的正中间)
layout_centerInParent 当前控件位于父控件的纵横向中间位置(垂直方向上的中间)

上述所有属性的取值皆为boolean属性:true、false。

b. 相对于给定控件

XML属性 说明
layout_above 使当前控件位于给出id控件的上方
layout_below 使当前控件位于给出id控件的下方
layout_toLeftOf 使当前控件位于给出id控件的左侧
layout_toRightOf 使当前控件位于给出id控件的右侧
layout_alignBottom 使当前控件与给出id控件的底部部重合
layout_alignLeft 使当前控件与给出id控件的左边重合
layout_alignRight 使当前控件与给出id控件的右边重合
layout_alignTop 使当前控件与给出id控件的顶部重合
layout_alignBaseline 使当前控件的BaseLine与给出id控件t的BaseLine重合

上述所有属性的取值皆为给定控件的id名,如下例子


6. AndroidManifest.xml项目配置

(1)AndroidManifest.xml项目配置文件

① AndroidManifest.xml位于根目录下,文件名不可修改,且只能出现一次

② 元素可以包含其他子元素,处于同一层次的元素,声明没有顺序

(2)Android应用使用的组件和系统配置信息

① 应用使用的组件及其实现类(Activity/Service等)

② 需要的Android系统权限

③ 声明其他应用程序与该应用程序交互需要的权限

④ 该应用程序所需Android api版本

⑤ 列出该应用程序必须链接的库

7.题目记录 以下关于Android应用程序的目录结构描述中,不正确的是(C) A.assets目录是原始资源目录,该目录中的内容将不会被R类引用 B.src目录是应用程序的主要目录,由Java类文件组成 C.AndroidManifest.xml 文件是应用程序目录清单文件,该文件由ADT自动生成,不需要程序员手动修改 D. res目录是应用资源目录,该目录中的所有资源内容都会被R类引用 下列不属于补间动画相关类的是(C) A.AlphaAnimation B.TranslateAnimation C.FrameAnimation D.RotateAnimation 在Java代码中,通过(C )方式可以访问到配置文件中定义的颜色信息。 A.R.color_name_id B.color_name C.R.color.color_name_id1.00/1.00 D.R.string.color_name_id 在res目录下的布局配置文件中,通过(A )方式可以访问strings.xml中定义的字符串常量信息title。 A.@string/title1.00/1.00 B.title C.String.title D.string/titile 如果需要给一个UI的组件设置背景图片,在Java代码中访问到定义的图片资源bg_pic.png的方法是(A )。 A.R.drawable.bg_pic1.00/1.00 B.R.color.bg_pic C.Drwable.bg_pic D.R.string.bg_pic 下面哪种说法不正确 B A.AndroidManifest.xml文件是 每个Android项目必须有的,是项目引用的全局描述。其中制定的程序包(package=”….”)+制定android应用的某个组件的名字(android:name=”…”)组成了该组件的完整路径 B.res目录是一个特殊目录,包含了 应用程序的全部资源,命名规则 可以支持 数字0-9,下航线,大小写字母1.00/1.00 C.assets和res目录都能存放资源文件,但是与res不同的是assets支持人资 深度的子目录,在它里面的文件不会在 R.java里生成任何ID D.Android应用的gen目录下 R.java被删除后能自动生成 下列 ( C ) 方法用于制定是否使用抗锯齿功能 A.setDither() B.setShader() C.setAntiAlias()1.00/1.00 D.setXfermode() SDK是什么(A) A.软件开发工具包1.00/1.00 B.虚拟设备 C.Android集成开发环境 D.JAVA开发程序包 (D ) 文件夹中的文件不能被R.java文件索引,但是会被编译到.apk中,并且原文件会被保留 。 A.libs B.gen C.drawable D.assets 创建Androi项目时,下面的包名错误的是(A) A.com.ouchn.01 B.com.ouh_01 C.com.ouchn D.com.ouchn.edu 在Android应用中需要添加访问互联网的权限配置(Permission),可以在配置文件( B)中进行设置。 A.values.xml B.AndroidManifest.xml C.stirngs.xml D.project.properites 关于res/raw目录说法正确的是 A A.这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B.这里的文件最终不会以二进制的格式存储到指定的包中 C.这里的文件最终以二进制的格式存储到指定的包中 D.这里的文件是原封不动的存储到设备上会转换为二进制的
作者:xbean1028


--结束END--

本文标题: android手机编程 第二讲

本文链接: https://lsjlt.com/news/28859.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作