文章出处:http://blog.sina.com.cn/s/blog_8b7a15530101bo0w.html
1、有关android中横屏和竖屏的值: 在某些场合可能需要禁止横屏和竖屏切换,实现这个要求很简单,只要在AndroidManifest.xml里面加入这一行android:screenOrientation="landscape "(landscape 是横向,portrait 是纵向)。不过android中每次屏幕的切换都会重启Activity,所以要在Activity销毁前保存当前活动的状态,在Activity再次创建Create的时候载入配置。在activity加上android:configChanges="keyboardHidden|orientation"属性,就不会重启activity.而是去调用onConfigurationChanged(Configuration newConfig).
@Override
} catch (Exception ex) {
}
}
2、getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);//设置成全屏模式
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE););//强制为横屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖屏
requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
设置屏幕显示模式ScreenOrientation.
在activity里设置android:screenOrientation的值。
android:screenOrientation的属性有以下值:
- unspecified(默 认值,由系统判断状态自动切换)
- landscape,横屏
- portrait,竖屏
- user(用户当前设置的orientation值)
- behind(下一个要显示的Activity的orientation值)
- sensor(传 感器的方向)
- nosensor(不 使用传感器,这个效果差不多等于unspecified).
获得当前屏幕宽高的方法.
Display display = getWindowManager().getDefaultDisplay();
Config.screenWidth = display.getWidth();//宽度
Config.screenHeight = display.getHeight()//;高度
但是getWidth()和getHeight()这俩个方法在API13之后,官方就废弃了这两个方法。
替代的方法:
DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); SCREEN_WIDTH = dm.widthPixels; SCREEN_HEIGHT = dm.heightPixels;
解析heightPixels和widthPixels:
public int heightPixels The absolute height of the display in pixels.
public int widthPixels The absolute width of the display in pixels.