获取Android手机屏幕的分辨率大小



为了更好的让应用程序的界面能适应不同手机的屏幕大小,有时候我们在开发中使用相对于屏幕实际大小的方法来设定布局中各个空间的位置跟大小,通过下面的方法可以获得Android手机实际屏幕分辨率大小。


首先我们需要用到的是DisplayMetrics这个类,它可以为我们获得手机屏幕属性,这里将其所在类导入。
import android.util.DisplayMetrics;

得到实例对象。
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);

得到手机屏幕高度:
dm.heightPixels;

得到手机屏幕宽度:
dm.widthPixels;

得到以上手机屏幕的高度跟宽度后,即可以通过这两个值按照比例还设定程序布局中空间的大小。

=========================

实现的程序如下:

在布局文件main.xml中添加一个TextView对象,一个Button对象。其中TextView对象用来显示获得的分辨率值,Button对象是当点击时获取分辨率。main.xml的代码如下:

Xml代码 收藏代码
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:Android="http://schemas.android.com/apk/res/android"
  3. Android:orientation="vertical"
  4. Android:layout_width="fill_parent"
  5. Android:layout_height="fill_parent"
  6. >
  7. <TextView
  8. Android:id="@+id/tv"
  9. Android:layout_width="fill_parent"
  10. Android:layout_height="wrap_content"
  11. Android:text="手机分辨率为:"/>
  12. <Button
  13. Android:id="@+id/btnOK"
  14. Android:layout_width="fill_parent"
  15. Android:layout_height="wrap_content"
  16. Android:text="获取手机分辨率"/>
  17. </LinearLayout>

在TestActivity中的代码如下:

Java代码 收藏代码
  1. publicclassTestActivityextendsActivity{
  2. privateTextViewtv;
  3. privateButtonbtn;
  4. //获取手机屏幕分辨率的类
  5. privateDisplayMetricsdm;
  6. publicvoidonCreate(BundlesavedInstanceState){
  7. super.onCreate(savedInstanceState);
  8. setContentView(R.layout.main);
  9. tv=(TextView)findViewById(R.id.tv);
  10. btn=(Button)findViewById(R.id.btnOK);
  11. btn.setOnClickListener(newView.OnClickListener(){
  12. publicvoidonClick(Viewv){
  13. dm=newDisplayMetrics();
  14. getWindowManager().getDefaultDisplay().getMetrics(dm);
  15. //获得手机的宽度和高度像素单位为px
  16. StringstrPM="手机屏幕分辨率为:"+dm.widthPixels+"*"+dm.heightPixels;
  17. tv.setText(strPM);
  18. }
  19. });
  20. }
  21. }

运行程序后,当我们点击Button按钮时,可以看到下面的效果图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值