Android智能电视应用程序开发浅谈(二)

Android应用程序的布局有两种,一种是在res/layout下面的xml文件里布局,一种是直接在java代码里布局,而Android智能电视有多种分辨率,我们可以建立多个适应不同分辨率的资源文件,但是Android智能电视上的应用程序,一般有很多图片,因此我们开发的时候大多数是采用直接在java代码里布局。

我设置的模拟器的尺寸是1920*1080,Android2.2版本的。

关于自适应屏幕的问题,我们可以使用以下的方法来解决:

首先要了解下DisplayMetrics这个类,它位于Android.util包下面的,它提供了关于显示的通用信息,比如显示大小,字体和分辨率。先定义宽、高,还有屏幕最大分辨率的宽和高,如下:

int widthMax=1920;

int heightMax=1080;

metrics ['metriks] 度量,测量

heightPixels:显示高度的绝对像素

widthPixels:显示宽度的绝对像素

要获取DisplayMetrics成员,得初始化一个对象,

DisplayMetrics metrics=new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(metrics);

则宽和高为

width=metrics.widthPixels , height=metrics.heightPixels;

另外还要设置一个方法:

public int heightChange(int x)

{

  return x*height/heightMax

}

在任何地方涉及到宽高等参数的问题的时候,要使用这个方法,这样才能自适应于其他不同分辨率的电视。

转载于:https://www.cnblogs.com/hxxy2003/archive/2011/07/30/2121767.html

猜你喜欢

转载自blog.csdn.net/weixin_34209851/article/details/93892511