开发Android应用APP时,你并不知道你的应用将要安装在何种机器上,这种机器使用何种配置你也不清楚。对UI来说,一个屏幕的大小,一个屏幕的分辨率。两样东西都是非常关键的。虽然Android默认有一个放大缩小按键,但是为了你的程序美观着想,你还是需要知道你的应用程序未来的窝的一些特性。Android提供了一些API,可供程序员来调用。
2.2.1 Android缺省提供的有关Display 的类
Android.util.DisplayMetrics | 这是一个结构类,存储了有关显示的大小、分辨率、文本拉伸等。它只是一个数据结构体,需要使用如下方法获取: DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); |
android.view.Display | 这是一个显示类,主要用来取得显示的高度,宽度、旋转、刷新频率等 |
android.view.WindowManager | 这是一个接口类,用来让APPS同WindowManager联系的一个通道。可以通过服务获取。
WindowManager wm = context.getSystemService(Context.WINDOW_SERVICE)。 这个接口的主要功能是获取缺省Display,另一个就是管理View,可以直接加入和删除VIEW |
android.view.Window | 这个类在显示中可以是一个基本类,但实际上开发APP时基本上不会去动这个类,并且这个类未来还会改变。但是这个类定义了屏幕初始窗口的一些基本特性。因此,也就是说这个类的一些特性参数是可以应用到APP中去的。 |
android.view.ViewManager |
使用这些类和接口,通常都是在Activity类内部取得相应服务,获取接口示例,然后取得相应数据。
代码示例如下
2.2.2 Android Style 样式的定义
看到Android用XML定义界面元素,有一种开发HTML页面的感觉,那么自然会想到HTML有CSS统一定义页面格式。Android有吗?自然这个少不了。写到这里心里有一股很奇怪的感觉,就是Android为什么不直接用HTML5标准呢。为什么自己又搞出一套UI格式来。让大家跟着后面不停的学呢。也许这是不同的公司政策问题。Android这里通过Style来定义UI的样式。然后在XML使用这个样式。
创建Style,同创建Color和创建字符串一样,均可在string.xml中创建,也可在values下单独创建一个style.xml。如上图所示。首先encoding申明为utf-8。