2010年3月18日 星期四

取得手機屏幕大小

Android基礎教程(四)之取得手機屏幕大小DisplayMetrics的應用

大家好,我們這一節要講的內容是Android如何取得手機屏幕大小的例子.本節主要用了三個對象TextView ,Button ,以及DisplayMetrics ,其中Displaymetrics 是取得手機屏幕大小的關鍵類,這個例子非常的簡單,當我們點擊按鈕,觸發事件,在TextView 裡顯示手機屏幕的寬高分辨率.

其中我們在res->layout->values->string.xml增加了兩行如下(黑體)


Hello World, DisplayMetricsDemo!
DisplayMetricsDemo
手機分辨率為:
按我獲分辨率

而佈局文件main.xml代碼如下:

android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:id="@+id/textview1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/resolution"
/>
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/pressme"
/>

最後是我們主類DisplaymetricsDemo.java,代碼如下:
package com.android.test;
import android.app.Activity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class DisplayMetricsDemo extends Activity {

private TextView textview1;
private Button button1;
//獲取手機屏幕分辨率的類
private DisplayMetrics dm;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

//獲取佈局中TextView,Button對像
textview1 = (TextView)findViewById(R.id.textview1);
button1 = (Button)findViewById(R.id.button1);

//增加button事件響應

button1.setonClickListener(new Button.onClickListener(){
public void onClick(View v)
{
dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
//獲得手機的寬帶和高度像素單位為px
String str = "手機屏幕分辨率為:" + dm.widthPixels
+" * "+dm.heightPixels;
textview1.setText(str);
}
});

}
}

沒有留言:

張貼留言