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

移动开发 Android
Android屏幕大小的改变方法多种多样,可以根据用户不同的需求来进行更改。我们在这篇文章中介绍的就是其中一个自适应更改的方法。

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. }  

如果在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;  

【编辑推荐】

  1. Android多媒体录制功能的实现方式介绍
  2. Android图片大小调整动态实现方法
  3. Android界面互调具体应用方式解析
  4. Android智能指针使用方法介绍
  5. Android查询联系人信息正确操作方法
责任编辑:曹凯 来源: CSDN
相关推荐

2010-01-28 10:55:14

Android电源管理

2010-01-25 13:50:41

Android输出Lo

2010-01-25 18:27:54

Android进度条

2010-01-26 18:00:07

Android屏幕元素

2009-12-28 15:01:39

WPF树应用

2009-12-29 16:08:41

Silverlight

2009-12-30 18:18:32

Silverlight

2010-01-25 18:22:33

Android使用XM

2010-01-25 18:33:35

Android键盘操作

2010-01-28 11:26:39

Android log

2009-12-31 10:21:53

Silverlight

2009-12-30 10:25:03

Silverlight

2009-12-31 16:44:53

Silverlight

2010-01-27 17:45:15

Android应用技巧

2010-01-28 14:12:20

Android Act

2010-02-05 13:44:06

C++ eof()函数

2010-03-04 14:39:52

Python读取输入值

2009-12-21 18:10:50

WCF实现事件通知

2009-12-30 09:55:51

Silverlight

2011-09-13 17:23:26

点赞
收藏

51CTO技术栈公众号