Android入门到精通|安卓/Android开发零基础系列Ⅱ【职坐标】-学习笔记(1)-- 常用控件及资源介绍
程序员文章站
2022-08-17 12:57:47
前言为了巩固Android基础知识,回顾一下学习内容,才有此学习笔记。IDE:Androdi Studio 4第一章第一节 如何在线学习开发?职坐标机构介绍,广而告之。第二节 文本控件Android常用控件 ★✩✩标签(Text View)按钮(Button)图像(ImageView、ImageButton)文本框(EditView)复选框(CheckBox)单选框(Radio Button)创建项目修改项目根目录的 build.gradle,......
前言
为了巩固Android基础知识,回顾一下学习内容,才有此学习笔记。
IDE
Androdi Studio 4 + Genymotion
创建项目
修改项目的 build.gradle,添加国内镜像
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.0.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
maven { url 'http://maven.aliyun.com/nexus/content/repositories/gradle-plugin' }
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Build一下,需要很长时间,下载依赖的工具和包。运行一下新建的项目。OK
主要目录
app 主项目目录
manifests
java
代码文件
res
存放项目用到的各种资源文件:如布局文件(layout)、文本(values\string.xml)、颜色、样式、图像(drawable)等。
资源文件添加到项目中会自动生成对应的ID,代码中访问资源都是通过这个资源Id查找。
如控件Id R.id.*;字符串id R.string.*;图片Id R.drawable.*等
资源文件名必须都是小写字符。
Gradle Scripts
项目自动化构建工具代码
第一章
第一节 如何在线学习开发?
职坐标机构介绍,广而告之。
第二节 文本控件
Android常用控件 ★✩✩
- 标签(Text View)
- 按钮(Button)
- 图像(ImageView、ImageButton)
- 文本框(EditView)
- 复选框(CheckBox)
- 单选框(Radio Button)
Text View(标签)★★★
- 标签用于显示信息,不能为用户手动修改。
- 在android中,TextView为标签控件。
- 设置控件属性可通过修改XML文件实现。也可通过设计器设置属性。
- Id 设置控件的Id,在代码中调用控件时必须设置。
- Text 设置控件显示的文本。
- color 设置控件文本的颜色。android颜色表示方式:#RGB、#RRGGBB、#ARGB、#AARRGGBB
Button(按钮)★★★
- 继承于TextView,具有TextView所有属性
- 用于响应用户点击操作
- 相应点击事件可在代码里注册View.OnClickListener监听器
- 三种方式实现响应单击事件,内部类实现、匿名类、xml文件设置方法名、也可以在Activity继承OnClickListener接口实现。
EditView(文本编辑框)★★★
- 继承于TextView,具有TextView所有属性
- 用户接收用户输入的内容
- hint属性用于用户输入提示,如果文本为空则显示。
- inputType属性用户限制用户输入。
第三节 图像控件 ★★★
ImageView(图像显示)★★★
- 用于显示图片
- 项目中添加图片,需要复制到 Drawable目录中,目录后缀名对应运行的API版本。
- src属性设置图片源。
- 代码中更改图片 setImageResource(R.drawable.xxx)
ImageButtton(图像显示,响应用户点击)★★★
- 图像显示,响应用户点击
- 继承自ImageView
第四节 选项控件 ★★★
单选按钮(ReadioGroup&RadioButton)
- RadioButton继承自CompoundButton
- isCheck() :确定是否被选中。
- setChecked():强制选中或取消选中。
- XML中设置checked属性的默认值。XML设置默认值,不能响应Check侦听。
- 状态监听器,实现OnCheckedChangeListener接口,并实现回调方法onCheckedChanged()。
多选按钮(CheckButton)
- CheckButton继承自CompoundButton
- isCheck() :确定是否被选中。
- setChecked():强制选中或取消选中。
- XML中设置checked属性的默认值。XML设置默认值,不能响应Check侦听。
- 状态监听器,实现OnCheckedChangeListener接口,并实现回调方法onCheckedChanged()。
第五节 资源的使用
- 字符串资源
- 颜色资源
- 图像资源
- 尺寸资源
字符串资源
- 有助于国际化和本地化
- 使用纯文本字符串在 res/values目录中的XML文件中定义(默认文件名 string.xml),不同语言版本使用不同的 目录 values-【区域代码】。
res/values/string.xml
<resources>
<string name="app_name">Demo</string>
<string name="btn_download">Download</string>
<string name="btn_downloading">Downloading...</string>
<string name="tip_downloading">Downloading...</string>
<string name="tip_download_stop">Finish</string>
</resources>
res/values-zh/string.xml
<resources>
<string name="app_name">功能演示</string>
<string name="btn_download">下载</string>
<string name="btn_downloading">正在下载...</string>
<string name="tip_downloading">正在下载...</string>
<string name="tip_download_stop">下载完成</string>
</resources>
可以从布局文件中引用此字符串,代码中使用 Id 引用此字符串。
//布局文件中引用
android:textColor="@string/btn_downloading"
//代码中引用
Resources res = getResources();
String str = res.getString(R.string.btn_downloading)
颜色资源
- Android中的颜色是十六进制RGB值。
- 提供的样式有4种:#RGB、#ARGB、#RRGGBB,#AARRGGBB
- 颜色资源可在 res/values 目录中的一个XML文件中定义。
<resources>
<color name="colorPrimary">#6200EE</color>
<color name="colorPrimaryDark">#3700B3</color>
<color name="colorAccent">#03DAC5</color>
<color name="white">#FFFFFF</color>
</resources>
图像资源
- Android支持PNG,JPEG和GIF格式的图片。
- 官方建议不要使用GIF格式,PNG是首选格式。
- 使用图像就是将图像文件放入 res/drawble 目录中,作为资源引用。
- 不同分辨率的图片资源,放在drawble-xxx不同后缀的目录中。
- 在布局文件中,图像使用 @drawble/... 格式引用。
尺寸资源
Android设备有许多不同形状及大小,屏幕尺寸不同与密度各不相同。
屏幕级别 | 屏幕密度 | 比率(相对) | 物理大小(英寸) | 像素大小 | 通常分辨率 |
mdpi | 160 | 4:1 | 1 | 160 | 320*480 |
hdpi | 240 | 6:1.5 | 1 | 240 | 480*800 |
xhdpi | 320 | 8:2 | 1 | 320 | 720*1280 |
xxhdpi | 480 | 12:3 | 1 | 480 | 1080*1800 |
Android支持单位
单位表示 | 单位名称 | 单位说明 |
px | 像素 | 屏幕上的真实像素表示 |
in | 英尺 | 基于屏幕的物理尺寸 |
mm | 毫米 | 基于屏幕的物理尺寸 |
pt | 点 | 英寸的1/72 |
dp | 和密度无关的像素 | 相对屏幕物理密度的抽象单位 |
sp | 和精度无关的像素 | 和dp类似 |
使用纯文本字符串在 res/values目录中的XML文件中定义(默认文件名 dimens.xml)
<resources>
<dimen name="btn_height">50dp</dimen>
<dimen name="btn_width">200dp</dimen>
<dimen name="btn_margin_top">10dp</dimen>
<dimen name="btn_text_size">20sp</dimen>
<dimen name="tip_text_size">20sp</dimen>
</resources>
第六节 触屏事件
- 重写方法 onTouchEvent
- 在控件上注册方法 setonTouchEventListener(..)
//重写Activity的 onTouchEvent 方法
@Override
public boolean onTouchEvent(MotionEvent event) {
float x = event.getX();
float y = event.getY();
switch (event.getAction())
{
case MotionEvent.ACTION_DOWN:
Log.i(TAG, "onTouchEvent: " + "按下 X=" + x + " Y=" + y);
break;
case MotionEvent.ACTION_MOVE:
Log.i(TAG, "onTouchEvent: " + "移动 X=" + x + " Y=" + y);
break;
case MotionEvent.ACTION_UP:
Log.i(TAG, "onTouchEvent: " + "抬起 X=" + x + " Y=" + y);
break;
}
//默认返回 false ,表示在未处理完,需要向上传递。
//如果已处理完可以返回 true
return super.onTouchEvent(event);
}
本文地址:https://blog.csdn.net/jingliuting/article/details/107440586