在本章教程中,我们将会学习如何使用DisplayMetrics获取手机分辨率。

是这样的,在Android手机如此风扉全球时期,手机的差异性也因为各个生产厂商的战略目标不一样,导致手机的差异性也日渐增大。

从09年到13年这四个年头里,Android手机的分辨率也随着科技的发展,从大众型的320*240演变成现在960*540甚至1280*720。

用户的需求也不一致,我父亲那一代人,虽然也用上了Android手机,但是他们对手机配置的需求不高,还停留在800*400,但是我看到身边很多朋友的手机都是960*540以上的了。

但是我们做开发的,就是希望开发出来的软件兼容性强,能够下至1.5上至4.2版本(Android内核版本)的手机都能兼容。

好吧扯远了,我们Just说说如何获取屏幕分辨率吧。OK开始。

第一步,我们先建立一个工程Ep.DisplayMetrics。

第二步,我们在视图上放两个控件,一个用于触发事件的Button,一个用于接收结果的Textview。奉上代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity" ><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:text="手机屏幕分辨率为:" /><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignLeft="@+id/textView1"android:layout_below="@+id/textView1"android:layout_marginTop="19dp"android:text="获取手机屏幕分辨率" /></RelativeLayout>

好的视图我们搞好了。

第三步,我们写一个事件,用于获取手机分辨率。奉上代码:

package com.example.displaymetrics;import android.os.Bundle;
import android.app.Activity;
import android.util.DisplayMetrics;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;public class MainActivity extends Activity {private TextView txtview1;private Button btn1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);txtview1=(TextView)findViewById(R.id.textView1);btn1=(Button)findViewById(R.id.button1);btn1.setOnClickListener(new OnClickListener() {private DisplayMetrics dm;@Overridepublic void onClick(View v) {//点击事件就是调用DisplayMetrics类获取手机分辨率。写法很简单。大家看了都明白。dm = new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(dm);int wpx= dm.widthPixels;int hpx=dm.heightPixels;String str=txtview1.getText().toString() + wpx + "*" + hpx ;txtview1.setText(str);}});}}

好的最后我们看看结果是怎么样的:

这样我们就能成功的获取到手机屏幕的分辨率了,至于要分辨率来干嘛?在日后的开发中你们会得到答案的。

Android教程(十二)-- 使用DisplayMetrics获取手机分辨率相关推荐

  1. 手机分辨率Android教程(十二)-- 使用DisplayMetrics获取手机分辨率

    在本篇文章中,我们主要介绍手机分辨率的内容,自我感觉有个不错的建议和大家分享下 在本章教程中,我们将会习学如何应用DisplayMetrics获得手机分辨率. 是这样的,在Android手机如此风扉寰 ...

  2. PyQt5教程(十二)——实现QQ登录界面(六、实现鼠标拖动界面,鼠标事件)

    PyQt5教程(十二)--实现QQ登录界面(五.实现鼠标拖动界面,鼠标事件) 一.实现界面可以随着鼠标进行拖动 1.主要就是对鼠标事件的实现: def mousePressEvent(self, ev ...

  3. Android Studio(十二):打包多个发布渠道的apk文件

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  4. android 常用机型尺寸_Android中获取手机屏幕大小的方法

    本文为大家解析Android中如何获取手机屏幕大小,提供一个解决方法,分享给大家供大家参考,具体内容如下 运行效果图: 运行程序后,当我们点击Button按钮时,可以看到下面的效果图: 具体代码: 我 ...

  5. 【Visual C++】游戏开发笔记四十四 浅墨DirectX教程十二 网格模型和X文件使用面面观

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhmxy555/article/details/8586540 作者:毛星云(浅墨 ...

  6. 【Visual C++】游戏开发笔记四十四 浅墨DirectX教程十二 网格模型和X文件使用面面观...

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/zhmxy555/article/details/8586540 作者:毛星云(浅墨) ...

  7. Wix 安装部署教程(十二) -- 自动更新WXS文件

    原文:Wix 安装部署教程(十二) -- 自动更新WXS文件 上一篇分享了一个QuickWIX,用来对比两个工程前后的差异,但是这样还是很繁琐,而且昨天发现有Bug,目录对比有问题.这次改变做法,完全 ...

  8. 【第二十二讲】获取参数名

    [第二十二讲]获取参数名 文章目录 [第二十二讲]获取参数名 将 `Bean2.java` 编译后,失去参数 加 `-parameters` 编译后有参数 加 `-g` 编译后有参数 获取参数 封装接 ...

  9. VML极道教程(十二) VML编程大结局

    本系列文章导航 VML极道教程(一) VML介绍 VML极道教程(二) VML入门 VML极道教程(三) 标记实战与line线 VML极道教程(四) oval圆rect矩型 VML极道教程(五) Ro ...

最新文章

  1. 【Origin】晨起忆梦
  2. 记录JS event Loop机制及Node v8事件执行机制
  3. UNITY 打APK是如何确定哪些资源有用哪些无用的
  4. bailian 2754八皇后
  5. greenPlum资源隔离
  6. slave_exec_mode参数跳过复制异常
  7. 大众考虑投资中国汽车零部件供应商 潜在目标包括国轩高科
  8. hdu acm 1540
  9. 高手常用的15 种 SQL 优化
  10. 【精彩文章】数学家论数学——数学的本质
  11. Linux 返回根目录
  12. 小米平板可以编程c语言吗,小米平板方便使用吗
  13. Rosalind第11题:Mortal Fibonacci Rabbits
  14. ae 能在linux上运行吗,玩了这么久Linux,这些使用技巧你可能还不知道!
  15. “东华春秋杯”上海大学生网络安全技能大赛决赛收官 聚焦高校人才培养
  16. 20-Django REST framework-Serializer序列化器
  17. UnderStand的使用说明
  18. linux mv修改文件名,linux命令mv - 移动或修改文件名
  19. 使用 ssh 连接安装 Anaconda
  20. 《少年的你》首映 易烊千玺坦言哭戏最有挑战

热门文章

  1. 我们是低估了百度地图,还是高估了高德?
  2. android 折纸动画,如何在Android中实现折纸动画
  3. HbuilderX配置Git插件并导入项目和上传代码
  4. Redux/Mobox 基础知识
  5. win10上cf调16位色教程
  6. L:python的Pandas模块:实例练习(泰坦尼克号数据集分析,电影票房统计,股票基本面统计)
  7. 浅谈Django的Signals的实现
  8. 【保姆级教程】hadoop 3.x 环境配置——入门篇
  9. 手机计算机两用u盘,怎一个方便了得 手机电脑两用OTG专用U盘
  10. kafka对接mysql_【Canal】利用canal实现mysql实时增量备份并对接kafka