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

获取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 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/tv"    
      Android:layout_width="fill_parent"    
      Android:layout_height="wrap_content"    
      Android:text="手机分辨率为:"/>   
    <Button   
       Android:id="@+id/btnOK"  
       Android:layout_width="fill_parent"  
       Android:layout_height="wrap_content"  
       Android:text="获取手机分辨率"/>   
</LinearLayout>

 

 

在TestActivity中的代码如下:

public class TestActivity extends Activity {   
           
    private TextView tv;   
    private Button btn;   
       
    //获取手机屏幕分辨率的类   
     private DisplayMetrics dm;   
       
    public void onCreate(Bundle savedInstanceState) {   
        super.onCreate(savedInstanceState);   
        setContentView(R.layout.main);    
           
        tv = (TextView)findViewById(R.id.tv);   
        btn = (Button)findViewById(R.id.btnOK);   
        btn.setOnClickListener(new View.OnClickListener() {   
               
          public void onClick(View v) {   
              dm = new DisplayMetrics();   
          getWindowManager().getDefaultDisplay().getMetrics(dm);   
                  //获得手机的宽度和高度像素单位为px   
          String strPM = "手机屏幕分辨率为:" + dm.widthPixels+"* "+dm.heightPixels;   
          tv.setText(strPM);   
            }   
        });   
    }   
    
}

 

 

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

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值