安卓学习笔记15:使用安卓应用程序资源
文章目录
- 零、学习目标
- 一、资源说明
- 1、字符串资源
- 2、数组资源
- 3、颜色资源
- 4、图片资源
- 5、音频资源
- 二、案例演示 - 使用安卓应用程序资源
- (一)运行效果
- (二)涉及知识点
- (三)实现步骤
- 1、创建安卓应用【UseAppResources】
- 2、将图片素材拷贝到drawable目录
- 3、将音频资源拷贝到自建的raw目录
- 4、主布局资源文件activity_main.xml
- 5、字符串资源文件strings.xml
- (1)字符串资源
- (2)数组资源
- 6、颜色资源文件colors.xml
- 7、主界面类MainActivity
- 8、启动应用,查看效果
- 9、优化代码说明
- 三、访问安卓平台资源
- 四、课后作业
- 任务:制作个人相册
零、学习目标
- 会在布局或程序里使用字符串资源
- 会在布局或程序里使用数组资源
- 会在布局或程序里使用颜色资源
- 会在布局或程序里使用图片资源
- 会在程序里使用安卓应用音频资源
一、资源说明
1、字符串资源
- 在字符串资源文件
strings.xml
里,利用<string>
元素来定义字符串资源
2、数组资源
- 在字符串资源文件
strings.xml
里,利用<array>
、<integer-array>
或<string-array>
元素来定义数组资源
3、颜色资源
- 在颜色资源文件
colors.xml
里,利用<color>
元素来定义颜色资源
4、图片资源
- 图标资源一般放在
mipmap
目录 - 图像资源一般放在
drawable
目录
5、音频资源
- 应用内含音频资源一般放在自建的
raw
目录 - 应用外置音频资源一般存放在外置存储卡上
- 安卓应用可以访问网络上的音频(通过
URI
)
二、案例演示 - 使用安卓应用程序资源
任务:使用安卓应用程序资源,包括字符串、数组、颜色、图片、音频。
关于样式资源styles,有点网页设计里CSS的味道,是一个界面美化师,当然也很有用,我们留待以后再讲述。
(一)运行效果
- 单击【播放音乐】按钮,会听到音乐响起,但是现在我们没有去控制音乐的播放,比如暂停、停止之类的功能以后我们会学习如何实现。
(二)涉及知识点
- 线性布局
- 按钮
- 字符串资源
- 数组资源
- 颜色资源
- 音频资源(播放)
(三)实现步骤
1、创建安卓应用【UseAppResources】
2、将图片素材拷贝到drawable目录
- 在布局资源文件里访问图片资源bg1.jpg:
android:background="@drawable/bg1"
- 在Java代码里访问图片资源bg1.jpg:
Drawable bg1 = getResources().getDrawable(R.drawable.bg1);
3、将音频资源拷贝到自建的raw目录
- 在Java代码里访问音频文件:
MediaPlayer mp = MediaPlayer.create(this, R.raw.alice);
- 安卓应用程序可以访问项目里的音频,也可以访问存储卡上的音频,甚至可以访问网络上的音频资源,目前我们只讲述第一种情况。
4、主布局资源文件activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/root"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@color/black"android:gravity="center"android:orientation="vertical"><Buttonandroid:id="@+id/btnAccessString"android:layout_width="200dp"android:layout_height="wrap_content"android:onClick="doAccessString"android:text="@string/access_string"android:textColor="#0000ff"android:textSize="20sp" /><Buttonandroid:id="@+id/btnAccessStringArray"android:layout_width="200dp"android:layout_height="wrap_content"android:onClick="doAccessStringArray"android:text="@string/access_string_array"android:textColor="#0000ff"android:textSize="20sp" /><Buttonandroid:id="@+id/btnChangeBackColor"android:layout_width="200dp"android:layout_height="wrap_content"android:onClick="doChangeBackColor"android:text="@string/change_backcolor"android:textColor="#0000ff"android:textSize="20sp" /><Buttonandroid:id="@+id/btnChangeBackground"android:layout_width="200dp"android:layout_height="wrap_content"android:onClick="doChangeBackground"android:text="@string/change_background"android:textColor="#0000ff"android:textSize="20sp" /><Buttonandroid:id="@+id/btnPlayMusic"android:layout_width="200dp"android:layout_height="wrap_content"android:onClick="doPlayMusic"android:text="@string/play_music"android:textColor="#0000ff"android:textSize="20sp" /></LinearLayout>
5、字符串资源文件strings.xml
(1)字符串资源
- 在布局资源文件里访问college变量:
android:text="@string/college"
- 在Java源代码里访问college变量:
String strCollege = getResources().getString(R.string.college);
(2)数组资源
- 在布局资源文件里访问majors变量:
android:entries="@array/majors"
- 在Java代码里访问majors变量:
String[] strMajors = getResources().getStringArray(R.array.majors);
6、颜色资源文件colors.xml
- 一个应用程序里会用到不少颜色,如果都是用“#XXXXXX”去设置颜色,就很不直观,不便于程序里使用,为此我们应该在颜色资源文件里创建程序需要的各种颜色,可以达到顾名思义的目的。
● 在布局资源文件里访问颜色变量:android:background="@color/red"
● 在Java代码里访问颜色变量:int color = getResources().getColor(R.color.red)
7、主界面类MainActivity
- 声明变量
- 通过资源标识符获取控件实例
- 访问字符串资源按钮单击事件处理方法
- 访问字符串数组资源按钮单击事件处理方法
- 改变背景色按钮单击事件处理方法
- 改变背景图片按钮单击事件处理方法
- 播放音乐按钮单击事件处理方法
8、启动应用,查看效果
9、优化代码说明
- 初始化颜色数组,不放在事件处理方法里,放在onCreate方法里
- 初始化图片数组,不放在事件处理方法里,放在onCreate方法里
三、访问安卓平台资源
- 安卓包含大量标准资源,比如图片、样式、主题和布局。
- 要访问这些资源,需要在资源引用前加上android包名,比如访问
res/drawale-mdpi/btn_check_off.png
资源,在布局资源文件里利用android.R.drawable.btn_check_off
即可访问。
四、课后作业
任务:制作个人相册
- 做一个简单的个人相册,提供【上一张】与【下一张】按钮来切换图片,并配上优美的背景音乐。
- 当切换到第一张图片,如果再单击【上一张】,那么切换到最后一张图片;
- 当切换到最后一张图片,如果再单击【下一张】,那么切换到第一张图片。
- 要求每张图片下面有文字说明。
安卓学习笔记15:使用安卓应用程序资源相关推荐
- 安卓学习笔记14:安卓手势操作编程
文章目录 零.学习目标 一.安卓手势操作原理 二.安卓手势类与接口 1.MotionEvent 2.GestureDetector 3.OnGestureListener 三.教学案例--利用手势切换 ...
- 安卓学习笔记13:安卓触摸事件
文章目录 零.学习目标 一.安卓触摸事件概述 1.触摸分类 2.触摸动作 3.触摸监听器 4.触摸方法 5.触点个数与坐标 二.安卓单点触摸 三.教学案例--通过单点触摸移动米老鼠 (一)运行效果 ( ...
- 安卓学习笔记04:安卓平台架构
文章目录 零.学习目标 一.安卓平台架构 (一)安卓平台架构简述 1.Linux 内核 2.硬件抽象层 (HAL) 3.安卓运行时(Android Runtime) 4.原生 C/C++ 库 5.Ja ...
- 安卓学习笔记12:安卓按键事件
文章目录 零.学习目标 一.安卓界面事件 (一)安卓常用事件 1.单击事件 2.焦点事件 3.按键事件 4.触碰事件 (二)安卓事件处理方式 1.基于回调的事件处理机制 2.基于监听的事件处理机制 二 ...
- 安卓学习笔记03:安卓应用目录结构
文章目录 零.学习目标 一.安卓应用视图 1.Project视图 2.Package视图 3.Android视图 二.安卓应用目录结构 (一)项目清单目录 - manifests (二)Java源程序 ...
- 安卓学习笔记 1.1 安卓Android Studio应用
Android Studio下载安装.创建第一个APP上课笔记步骤: 一.下载Android Studio 二.安装Android Studio 三.配置Android Studio 四.创建第一 ...
- 2020年安卓学习笔记目录
文章目录 一.讲课笔记 二.安卓案例 三.安卓实训项目 四.学生安卓学习博客 五.安卓课后作业 (一)界面设计练习 1.制作登录界面 2.制作部队管理界面 3.制作灭火救援界面 4.制作交付界面 5. ...
- 安卓学习笔记07:事件处理、窗口跳转与传递数据
文章目录 零.学习目标 一.三个基本控件 1.标签控件(TextView) 2.编辑框控件(EditText) 3.按钮控件(Button) 二.安卓事件处理机制 (一)安卓事件处理概述 (二)安卓事 ...
- 很low的安卓学习笔记(一、实用技巧)
很low的安卓学习笔记(一.实用技巧) 一.学习了几天的实用技巧小总结: 1.规范的定义内容的格式: 2.一些快捷键 3.将xxx.xml布局改为Activity中可以调用的View视图 4.当左下角 ...
最新文章
- centos 配置bond_Linux CentOS 7 多网卡配置bond模式 bond1 bond5 bond6
- ubuntu14.04LTS openssh-server 手动安装配置步骤
- sql 执行顺序_10个简单步骤,完全理解SQL
- 2021-10-7 !二叉树的前序、中序、后序遍历 (递归版本)
- 用计算机计算的手抄报内容,关于数学计算手抄报
- 自定义类在PropertyGrid上的展示方法
- 深入理解及配置ISA Server 2006访问规则
- python cannot import name main_virtualenv: cannot import name 'main'
- lamp兄弟连的解决问题套路
- ICA算法的数学原理
- 西安理工大学计算机科学与技术分数线,2017西安理工大学各专业录取分数线
- 第二人生的源码分析(十九)人物组合显示
- Windows下的SysWow64和System32
- Echarts 飞线图
- iOS视频转Gif(附example code)
- 亲测苹果CMS简洁精美影视模板整站源码+带视频教程
- keep sb updated_keep me updated是什么意思
- Ubuntu下能连上无线但不能上网
- python输出间隔符号_间隔符号?
- 实战演练-抽奖程序(C#)(第一部分)
热门文章
- 带着canvas去流浪系列之八 碰撞
- mysql 数据目录更换_更改Mysql数据目录,这个坑你可能也趟过~
- Android笔记 杀死进程demo
- 简述java的异常处理机制_简述java异常处理机制
- spikingjelly中的ANN2SNN程序20201221是好使的
- qq批量登录软件_把微信PC版越甩越远!QQ电脑版这些新功能太良心
- MarkDown中的表格在jekyll的pages博客中不能正常显示
- oracle切换sqlserver,ORACLE语法转换成sqlserver,该如何解决
- java行转列_Java后端面试标准:如何准备一场后端面试?
- java 内存泄漏问题_JAVA内存泄漏问题处理方法经验总结