- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 初级控件
本章简介
本章介绍Android屏幕显示与初级视图的相关知识,
主要包括屏幕显示基础、简单布局的用法、简单控件的用法、简单图形的用法。
并且结合本章所学的知识,演示了一个实战项目“简单计算器”的设计与实现。
本章目录
2.1 屏幕显示
2.2 简单布局
2.3 简单控件
2.4 图形基础
2.5 实战项目:简单计算器
2.6 小 结
2.1 屏幕显示
本节从最基础的显示单元开始介绍,讲述了移动设备如何在屏幕上展现丰富多彩的界面。本节主要内容包括像素的几个常用单位、颜色的编码与使用、屏幕分辨率的获取等。
2.1.1 像素
2.1.2 颜色
2.1.3 屏幕分辨率
2.1.1 像素
Android支持的像素单位常见的主要有下面三种:
(1)px
它是手机屏幕上可显示的最小单位,与物理设备的显示屏有关。
(2)dp/dip
它与物理设备无关,只与屏幕的尺寸有关。
(3)sp
它的原理跟dp差不多,专门用于设置字体大小。系统设置菜单里面,设置普通字体时,同数值dp和sp的文字看起来一样大;如果设置为大字体,用dp设置的文字没有变化,用sp设置的文字就变大了。
2.1.2 颜色
在Android中,颜色值由透明度alpha和RGB(红、绿、蓝)三原色定义,有八位十六进制数与六位十六进制数两种编码。
例如八位编码FFEEDDCC,FF表示透明度,EE表示红色的浓度,DD表示绿色的浓度,CC表示蓝色的浓度。透明度为FF表示完全不透明,为00表示完全透明。
六位十六进制编码有两种情况,在XML文件中默认不透明(透明度为FF),在代码中默认透明(透明度为00)。
所以在代码中要使用八位的十六进制数来表示颜色,因为六位的十六进制数在代码中是透明的。
使用颜色的方式
在Android中使用颜色有下列3种方式:
1. 使用系统已定义的颜色常量。
Android系统有12种已经定义好的颜色,具体的类型定义在Color类中。
2. 使用十六进制的颜色编码。
在布局文件中设置颜色需要在色值前面加“#”,如android:textColor=“#000000”。在代码中设置颜色可以直接填八位的十六进制数值(如setTextColor(0xff00ff00);)。
3. 在res/values/colors.xml中定义颜色常量。
在布局中使用颜色常量,可引用“@color/常量名” ;在代码中使用颜色常量,可这样获取:getResources().getColor(R.color.常量名)。
2.1.3 屏幕分辨率
手机的屏幕分辨率信息包括:屏幕的宽度、屏幕的高度、屏幕的像素密度。
在代码中获取分辨率要依靠DisplayMetrics工具,下面是该类的常用属性说明:
widthPixels:以px为单位计量的宽度值。
heightPixels:以px为单位计量的高度值。
density:像素密度,即一个dp单位包含多少个px单位。
下面是获取当前屏幕的宽度、高度、像素密度的代码示例。
// 获得屏幕的宽度
public static int getScreenWidth(Context ctx) {
// 从系统服务中获取窗口管理器
WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dm = new DisplayMetrics();
// 从默认显示器中获取显示参数保存到dm对象中
wm.getDefaultDisplay().getMetrics(dm);
return dm.widthPixels; // 返回屏幕的宽度数值
}
// 获得屏幕的高度
public static int getScreenHeight(Context ctx) {
// 从系统服务中获取窗口管理器
WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);
DisplayMetrics dm = new DisplayMetrics();
// 从默认显示器中获取显示参数保存到dm对象中
wm.getDefaultDisplay().getMetrics(dm);
return dm.heightPixels; // 返回屏幕的高度数值
您可能关注的文档
最近下载
- 新人音版二年级音乐下册优秀教学设计《共产儿童团歌》教案.doc VIP
- 肝硬化诊治指南2025年.docx
- 初中数学新人教版八年级上册13综合与实践 确定匀质薄板的重心位置教学课件2025秋.pptx VIP
- 08【人教版英语字帖】八年级上册单词表衡水体字帖(新目标含音标).pdf VIP
- 2023年10月自考06089劳动关系与劳动法押题及答案.pdf VIP
- 新教科版小学科学实验目录五年级上册.docx VIP
- 合理用药用药班会PPT课件.pptx VIP
- 结构设计弯矩二次分配法计算(表格自带公式).xls VIP
- 规范言行从我做起主题班会.pptx
- PanelView Plus 7 Performance 终端用户手册.pdf VIP
文档评论(0)