轉載原文地址:感謝作者
http://blog.csdn.net/wdaming1986/article/details/6769821
Android獲取屏幕大小非常常用,例如寫個程序,如果要做成通用性很強的程序,適用屏幕很強,一般佈局的時候都是根據屏幕的長寬來定義的,所以我把這個總結一下,方便日後忘記的時候查閱。還有就是有時候寫程序根據需求不需要title,可以在程序中設置無title的屏幕!
程序的效果圖:
代碼說明一切真理:
一、mainActivity。java類得代碼:
- package com.cn.daming;
- 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 MainActivity extends Activity {
- private TextView mTextView;
- @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對象
- DisplayMetrics dm = new DisplayMetrics();
- //獲取窗口屬性
- getWindowManager().getDefaultDisplay().getMetrics(dm);
- //窗口寬度
- int screenWidth = dm.widthPixels;
- //窗口高度
- int screenHeight = dm.heightPixels;
- mTextView = (TextView)findViewById(R.id.text_view);
- mTextView.setText("屏幕寬度: "+screenWidth+
- "\n屏幕高度: "+screenHeight);
- }
- }
二、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:id="@+id/text_view"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:layout_gravity="center_vertical|center_horizontal"
- android:gravity="center"
- android:text="@string/hello"
- android:textSize="18pt"
- />
- </LinearLayout>