雖然Android可設定成隨著手機螢幕的大小來調整縮放比例,但是手機開發者在設計的時候還是必須清楚得知手機銀幕的邊界,避免在縮放的時候造成版面(layout)上的詭異變型,根據各家手機廠商螢幕尺寸的不同,必須對其螢幕解析度有所概念。

Screen01  

小試身手小範例:

藉著幾行程式碼來取得手機螢幕的解析度,當中的關鍵為DisplayMetrics類別應用。 

example0305.java

import android.app.Activity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.Window;
import android.view.WindowManager;
import android.widget.TextView;

public class example0305 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);   //全螢幕設定
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.main);

    DisplayMetrics metrics = new DisplayMetrics();  
    getWindowManager().getDefaultDisplay().getMetrics(metrics);

    TextView TextView1 = (TextView)findViewById(R.id.TextView01);
    TextView1.setText("手機銀幕大小為 "+metrics.widthPixels+" X "+metrics.heightPixels);
  }
}

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/TextView01"
android:textSize="20sp"
/>
</LinearLayout>

arrow
arrow

    S 發表在 痞客邦 留言(3) 人氣()