资 讯

网站建设、app开发、微信开发、网络营销知识汇聚

We provide professional and all-round information services to enterprises from all levels and angles

了手机软件开发移动设备如何在屏幕上展现丰富多彩的界面
admin 2018-08-30

本章介绍Android屏幕显示初级视图的相关知识,主要包括屏幕显示基础、简单布局的用法、简单控件的用法、简单图形的用法。并且结合本章所学的知识,演示了一个实战项目“简单计算器的设计与实现。

      2.1屏幕显示

      本节从最基础的显示单元开始介绍,讲述了手机软件开发移动设备如何在屏幕上展现丰富多彩的界面。本节主要内容包括像素的几个常用单位、颜色的编码与使用、屏幕分辨率的获取等。2.1.1  像素

      老子曾说“天下难事必作于易,天下大事必作于细”,Android开发也是如此。纵使App的界面千变万化、绚丽多姿,也都归因于数百万个像素的组合排列,就像万物皆由原子构成-般。像素看似简单,实际有大学问,如果对像素单位不知其所以然,开发时只知一根筋的填数字,结果在模拟器上运行得很好的界面,在真机上很可能显示得东倒西歪,这就是没打好基础的缘故。如果一开始就把像素的基本概念弄清楚,后面就会少走很多弯路,开发起来也会更加得心应手。

      Android支持的像素单位有: px(像素)、 in(英寸)、mm(毫米)、pt(磅,1/72英寸)、dp(与设备无关的显示单位)、dip(就是dp)、sp(用于设置字体大小)。其中,常用的有px、dp和sp三种。

      具体来说,px是手机屏幕上可显示的最小单位,与物理设备的显示屏有关。一般来说,同样尺寸的屏幕(比如5寸的手机)看起来越清晰,像素的密度越高,以px计里的分辨率也越大。

      dp与物理设备无关,只与屏幕的尺寸有关。一般来说,同样尺寸的屏幕以dp计里的分辨率是一样的, 无论这个手机是哪个厂家生产的,dp大小都一样。

      sp的原理跟dp差不多,专门用于设置字体大小。手机在系统设置里可以调整字体的大小小、普通、大、超大)。设置普通字体时,同数值dp和sp的文字看起来一样大;如果设置为大字体,用dp设置的文字没有变化,用sp设置的文字就变大了。例如,当系统设置普通字体时,18dp与18sp的文字一样大, 如图2-1所示;当系统设置大字体时,18dp的文字大小不变,18sp的文字却增大了,如图2-2所示。




      在XML布局文件中,为了让不同设备屏幕拥有统一的显示效果,除了sp用于设置文字大小外,其余要用大小的地方都用dp。在代码中情况又有所不同,

      Android用于设置大小的函数都以px为单位。无论是LayoutParams里的width和height,还是setMargins 和setPadding,参数单位都是px,要想在代码中使用dp设置布局大小或间距,得先把dp值转换成px值。代码示例如下:

      int dip_ 10 = Utils.dip2px(this, 1oL);

      TextView tv_ padding = (TextView) fndViewById(R.id.tv_ padding);tv_ padding.setPadding(dip 10, dip_ 10, dip_ 10, dip_ 10);2.1.2  颜色

      在Android中,颜色值由透明度alpha和RGB(红、绿、蓝)三原色定义,有八位十六进制数与六位十六进制数两种编码,例如八位编码FFEEDDCC,FF表示透明度,EE表示红色的浓度,DD表示绿色的浓度,CC表示蓝色的浓度。透明度为FF:表示完全不透明,为00表示完全透明。RGB三色的数值越大颜色越浓也就越亮,数值越小颜色越暗。亮到极致就是白色,暗到极致就是黑色,这样记就不会搞混了。

      六位十六进制编码有两种情况,在XML文件中默认不透明(透明度为FF),在代码中默认透明(透明度为0o)。下面的代码分别给两个文本控牛设置六位编码和八位编码的背景色。

      TextViewtv_ code_ six = (TextView) findViewById(R.id.tv_ code_ six);tv_ code_ six.setBackgroundColor(oxoffoo);

      TextView tv_ code_ eight = (TextView) fndViewById(Rid.tv_ code_ eight);



tv_ code_ eight.setBackgroundColordoffoffoo);
从图2-3可以看到,代码使用六位编码看不到任何背景,使用八位编码能够看到正确的绿色背景。

Junior
XML手机app开发设置六位背景颜色代码设置六位背景颜色代码设置八位背景颜色

说明黑色深灰

图2-3不同方式设置 颜色编码的效果图在Android中使用颜色有下列g种方式:1.使用系统已定义的颜色常里。
Android系统有12种已经定义好的颜色,具体的类型定义在Color类中,详细的取值说明见表2-10Color类中的颜色类型BLACKDKGRAYGRAYLTGRAYWHITERED

Color类中的颜色类型GREENBLUEYELLOWCYAN
白色  MAGENTA
TRANSPARENT表2-1颜色类型的取值说明2.使用十六进制的颜色编玛。
在布局文件中设置颜色需要在色值前面加“#”,如
android:textColor=" #0000oo"。在代码中设置颜色可以直接填八位的十六进制数值(如setTextColoroffooffoo);),也可以通过Color.rgb(int red, int green, intblue)和Color.argb(int alpha, int red, int green, int blue)这两种方法指定颜色。在代码中一般不要 用六位编码,因为六位编码在代码中默认透明,所以代码用六位编码跟不用没什么区别。
3.使用colors.xml中定义的颜色。
 

  • 上一篇:手机软件开发Android系统版本
  • 下一篇:实战项目:上海App开发
  • © 2011-2018 www.keyrey.com 上海科睿网络科技有限公司 © 版权所有 沪ICP备12032097号-1
    友情链接 : 上海app开发 app开发公司 app制作 手机软件开发 手机软件开发公司 小程序开发 上海网站制作公司
    QQ在线咨询

    上海app开发QQ在线咨询 上海app开发QQ在线咨询
    电话咨询
    400-877-9280 app开发公司电话咨询
    即时在线咨询 手机软件开发即时在线咨询
    微信扫一扫
    添加app制作微信 上海网站制作公司微信
    科睿网络-互联网开发营销专家

    凡事有交代 件件有着落 事事有回应

    立即获取为您量身定制的开发营销方案

    咨询热线 400-877-9280