【Android】获取屏幕分辨率和顶栏高度全屏和横屏

//获取屏幕分辨率 方法1
		DisplayMetrics dm = new DisplayMetrics(); 
		android.view.Display display = getWindowManager().getDefaultDisplay(); 
		display.getMetrics(dm); 
	  	screen_w  = dm.widthPixels;
		screen_h = dm.heightPixels;

//获取屏幕分辨率 方法
 
  
		WindowManager windowManager = getWindowManager();

		Display display = windowManager.getDefaultDisplay();

		screenWidth = display.getWidth();

		screenHeight = display.getHeight();



	// 获取手机状态栏高度
	public static int getStatusBarHeight(Context context) {
		Class c = null;
		Object obj = null;
		Field field = null;
		int x = 0, statusBarHeight = 0;
		try {
			c = Class.forName("com.android.internal.R$dimen");
			obj = c.newInstance();
			field = c.getField("status_bar_height");
			x = Integer.parseInt(field.get(obj).toString());
			statusBarHeight = context.getResources().getDimensionPixelSize(x);
		} catch (Exception e1) {
			e1.printStackTrace();
		}
		return statusBarHeight;
	}
	//用的时候直接调用这个方法。


以下粘贴自,http://xqjay19910131-yahoo-cn.iteye.com/blog/1435249


-----------------------------------------------------------------------------------------------------------------------------------------
设置为无标题 
Java代码  

Java代码   收藏代码
  1. requestWindowFeature(Window.FEATURE_NO_TITLE);    


设置为全屏模式getWindow().setFlags 
Java代码  
Java代码   收藏代码
  1. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);    



设置为横屏 
Java代码  
Java代码   收藏代码
  1. setRequesteOrientation(ActivityInfo.SCREEN_ORIENTATION_LADSCAPE);   



//--------------------------------------------------------------- 


在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改
一、在代码中设置: 
Java代码   收藏代码
  1. view plaincopy to clipboardprint?  
  2.  package com.android.tutor;    
  3.  import android.app.Activity;    
  4.  import android.os.Bundle;    
  5.  import android.view.Window;    
  6.  import android.view.WindowManager;    
  7.  public class OpenGl_Lesson1 extends Activity {    
  8.      public void onCreate(Bundle savedInstanceState) {    
  9.          super.onCreate(savedInstanceState);    
  10.         //去除title      
  11.        requestWindowFeature(Window.FEATURE_NO_TITLE);      
  12.         //去掉Activity上面的状态栏  
  13.         getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,        
  14.                        WindowManager.LayoutParams. FLAG_FULLSCREEN);     
  15.               
  16.          setContentView(R.layout.main);    
  17.      }    
  18.  }   

在这里要强调一点,设置全屏的俩段代码必须在setContentView(R.layout.main) 之前,不然会报错。 

二、在配置文件里修改 
(关键代码:
Java代码   收藏代码
  1. android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  
如果想只是去除标题栏就后面不用加Fullscreen了,另外,如果想要整个应用都去除标题栏和状态栏,就把这句代码加到

Java代码   收藏代码
  1. "1.0" encoding="utf-8"?>    
  2.  "http://schemas.android.com/apk/res/android"    
  3.        package="com.android.tutor"    
  4.        android:versionCode="1"    
  5.        android:versionName="1.0">    
  6.      "@drawable/icon" android:label="@string/app_name">    
  7.          ".OpenGl_Lesson1"    
  8.                    android:theme="@android:style/Theme.NoTitleBar.Fullscreen"    
  9.                    android:label="@string/app_name">    
  10.                  
  11.                  "android.intent.action.MAIN" />    
  12.                  "android.intent.category.LAUNCHER" />    
  13.                  
  14.              
  15.          
  16.      "7" />    
  17.       
在这里我还想说明一下,用前者在我们应用运行后,会看到短暂的状态栏,然后才全屏,而第二种方法是不会有这种情况的,所以我建议大家使用后者!




禁止转载

你可能感兴趣的:(安卓,android)