当前位置:首页 > 编程开发

Android屏幕大小相关技巧应用指南

webgou16年前 (2010-08-08)编程开发237

Android应用程序中屏幕大小的设置大家应该都比较清楚,不过如何才能让屏幕自己适应环境而改变大小呢?在这里我们就可以为大家详细介绍一下有关Android屏幕大小的自适应方式,帮助大家理解。

不同的Android target会有不同的大小,应用程序的界面需要针对不同的大小调整界面元素的尺寸。而且Android屏幕大小也可以在横屏和竖屏之间切换,界面也需要调整。

如何取得屏幕的方向:

默认情况下,当屏幕方面切换时,activity的onCreate()方法会被重新调用,所以可以在其中通过以下代码来读取屏的方向:

  1. view plaincopy to clipboardprint?  
  2. public void onCreate() {   
  3. if(this.getResources().getConfiguration()
    .orientation == Configuration.ORIENTATION_LANDSCAPE) {   
  4. Log.i("info", "landscape");   
  5. } else if (this.getResources().getConfiguration()
    .orientation == Configuration.ORIENTATION_PORTRAIT) {   
  6. Log.i("info", "portrait");   
  7. }   
  8. }   
  9. public void onCreate() {  
  10. if(this.getResources().getConfiguration()
    .orientation == Configuration.ORIENTATION_LANDSCAPE) {  
  11. Log.i("info", "landscape");  
  12. } else if (this.getResources().getConfiguration()
    .orientation == Configuration.ORIENTATION_PORTRAIT) {  
  13. Log.i("info", "portrait");  
  14. }  
  15. } 

如果在androidmanifest.xml中加入配置

  1. android:configChanges="orientation|keyboardHidden|navigation 

当屏幕翻转时,Activity就不会重复的调用onCreate()、onPause()和onResume().

而是调用onConfigurationChanged(Configuration newConfig)

如何取得Android屏幕大小:

  1. view plaincopy to clipboardprint?  
  2. int screenWidth,screenHeight;   
  3. WindowManager windowManager = getWindowManager();   
  4. Display display = windowManager.getDefaultDisplay();   
  5. screenWidth = display.getWidth();   
  6. screenHeight = display.getHeight();   
  7. int screenWidth,screenHeight;  
  8. WindowManager windowManager = getWindowManager();  
  9. Display display = windowManager.getDefaultDisplay();  
  10. screenWidth = display.getWidth();  
  11. screenHeight = display.getHeight();  

也有人提到另一种Android屏幕大小的更改方法:

  1. view plaincopy to clipboardprint?  
  2. DisplayMetrics dm = new DisplayMetrics();   
  3. getWindowManager().getDefaultDisplay().getMetrics(dm);   
  4. int screenWidth = dm.widthPixels;   
  5. int screenHeight = dm.heightPixels; 

扫描二维码推送至手机访问。

版权声明:本文由知了博客发布,如需转载请注明出处。

本文链接:https://www.webgou.info/?id=233

标签: android界面
分享给朋友:

“Android屏幕大小相关技巧应用指南” 的相关文章

C++面试之const、#define

问题1:const与#define相比有什么不同? C++可以用const定义常量,也可以用#define定义常量,但是前者比后者有更多的有点:…

char,short ,int ,long,long long,unsigned long long数据范围

 速查表:char -128 ~ +127 (1 Byte)...…

运行期

运行期…

软件会议思考

很多时候,也有很多想法,但过完之后也就没有.刚看到一篇关于危险职业的论断,提出收入大与出路窄很有道理. 今天,开会的主要主题有两个: 1.应对售后,编写提供给销售人员能定位程序异常的工具 2.后装车机市场,提高开发速度,破解协议任务的分解 关于工具,主要功能: 1.取得日志, 2.获取当前软件信…

vs 2005 map 文件调试技巧

vs 2005 map 文件调试技巧 …

从 Z-BlogASP 到 Z-BlogPHP:一次老博客升级迁移记录

很多早年搭建的个人博客,都会遇到同一个问题:程序还能跑,文章也都在,但后台、主题、插件和服务器环境已经明显跟不上了。我的这个站点就是一个典型例子,原来使用的是 Z-BlogASP 老版本,数据放在 Access 数据库里,没有 MySQL,运行环境也比较旧。这次升级的目标不是“换一个全新网站”,而是…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。