Android教程(十二)-- 使用DisplayMetrics获取手机分辨率
在本章教程中,我们将会学习如何使用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获取手机分辨率相关推荐
- 手机分辨率Android教程(十二)-- 使用DisplayMetrics获取手机分辨率
在本篇文章中,我们主要介绍手机分辨率的内容,自我感觉有个不错的建议和大家分享下 在本章教程中,我们将会习学如何应用DisplayMetrics获得手机分辨率. 是这样的,在Android手机如此风扉寰 ...
- PyQt5教程(十二)——实现QQ登录界面(六、实现鼠标拖动界面,鼠标事件)
PyQt5教程(十二)--实现QQ登录界面(五.实现鼠标拖动界面,鼠标事件) 一.实现界面可以随着鼠标进行拖动 1.主要就是对鼠标事件的实现: def mousePressEvent(self, ev ...
- Android Studio(十二):打包多个发布渠道的apk文件
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
- android 常用机型尺寸_Android中获取手机屏幕大小的方法
本文为大家解析Android中如何获取手机屏幕大小,提供一个解决方法,分享给大家供大家参考,具体内容如下 运行效果图: 运行程序后,当我们点击Button按钮时,可以看到下面的效果图: 具体代码: 我 ...
- 【Visual C++】游戏开发笔记四十四 浅墨DirectX教程十二 网格模型和X文件使用面面观
本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhmxy555/article/details/8586540 作者:毛星云(浅墨 ...
- 【Visual C++】游戏开发笔记四十四 浅墨DirectX教程十二 网格模型和X文件使用面面观...
本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/zhmxy555/article/details/8586540 作者:毛星云(浅墨) ...
- Wix 安装部署教程(十二) -- 自动更新WXS文件
原文:Wix 安装部署教程(十二) -- 自动更新WXS文件 上一篇分享了一个QuickWIX,用来对比两个工程前后的差异,但是这样还是很繁琐,而且昨天发现有Bug,目录对比有问题.这次改变做法,完全 ...
- 【第二十二讲】获取参数名
[第二十二讲]获取参数名 文章目录 [第二十二讲]获取参数名 将 `Bean2.java` 编译后,失去参数 加 `-parameters` 编译后有参数 加 `-g` 编译后有参数 获取参数 封装接 ...
- VML极道教程(十二) VML编程大结局
本系列文章导航 VML极道教程(一) VML介绍 VML极道教程(二) VML入门 VML极道教程(三) 标记实战与line线 VML极道教程(四) oval圆rect矩型 VML极道教程(五) Ro ...
最新文章
- 【Origin】晨起忆梦
- 记录JS event Loop机制及Node v8事件执行机制
- UNITY 打APK是如何确定哪些资源有用哪些无用的
- bailian 2754八皇后
- greenPlum资源隔离
- slave_exec_mode参数跳过复制异常
- 大众考虑投资中国汽车零部件供应商 潜在目标包括国轩高科
- hdu acm 1540
- 高手常用的15 种 SQL 优化
- 【精彩文章】数学家论数学——数学的本质
- Linux 返回根目录
- 小米平板可以编程c语言吗,小米平板方便使用吗
- Rosalind第11题:Mortal Fibonacci Rabbits
- ae 能在linux上运行吗,玩了这么久Linux,这些使用技巧你可能还不知道!
- “东华春秋杯”上海大学生网络安全技能大赛决赛收官 聚焦高校人才培养
- 20-Django REST framework-Serializer序列化器
- UnderStand的使用说明
- linux mv修改文件名,linux命令mv - 移动或修改文件名
- 使用 ssh 连接安装 Anaconda
- 《少年的你》首映 易烊千玺坦言哭戏最有挑战
热门文章
- 我们是低估了百度地图,还是高估了高德?
- android 折纸动画,如何在Android中实现折纸动画
- HbuilderX配置Git插件并导入项目和上传代码
- Redux/Mobox 基础知识
- win10上cf调16位色教程
- L:python的Pandas模块:实例练习(泰坦尼克号数据集分析,电影票房统计,股票基本面统计)
- 浅谈Django的Signals的实现
- 【保姆级教程】hadoop 3.x 环境配置——入门篇
- 手机计算机两用u盘,怎一个方便了得 手机电脑两用OTG专用U盘
- kafka对接mysql_【Canal】利用canal实现mysql实时增量备份并对接kafka