Android 判断当前屏幕是横屏还是竖屏
//获取设置的配置信息

Configuration mConfiguration = this.getResources().getConfiguration(); //获取屏幕方向int ori = mConfiguration.orientation; if (ori == mConfiguration.ORIENTATION_LANDSCAPE) {    //当前为横屏    //强制为竖屏    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);} else if (ori == mConfiguration.ORIENTATION_PORTRAIT) {    //当前为竖屏    //强制为横屏   setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);}

这个时候回调用onConfigurationChanged 这个方法
需要添加或者清除Flage

@Override    public void onConfigurationChanged(Configuration newConfig) {        super.onConfigurationChanged(newConfig);        if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {            //横屏            //强制为竖屏            getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);        } else if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {            //竖屏            // 强制为横屏            getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);        }    }

最后看一下点击横屏的点击事件

 if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {                    //横屏                    //强制为竖屏                    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);                    RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(                            ViewGroup.LayoutParams.MATCH_PARENT, (int) dp2px(210));                    txVideoview.setLayoutParams(lp);                } else if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {                    //竖屏                    //强制为横屏                    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);                    RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(                            ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);                    txVideoview.setLayoutParams(lp);                }

最后需要在Activity中加上属性

android:configChanges="orientation|screenSize"

防止手机旋转时, Activity被重建.

更多相关文章

  1. Android获取打开各种文件Intent汇总
  2. Android中获取短信的内容
  3. android 获取图片
  4. 修改dialog的大小
  5. 从 android sqlite 中获取boolean值
  6. android获取屏幕分辨率大小(DisplayMetrics)
  7. android获得屏幕高度和宽度
  8. Android获取屏幕宽度的4种方法
  9. Android网络连接判断与处理

随机推荐

  1. Android中自定义权限
  2. android 项目中规范使用SharedPreference
  3. Android权限注解
  4. Android(安卓)LCD(四):LCD驱动调试篇
  5. Android开发之InstanceState详解
  6. Android(安卓)style 的继承
  7. Android(安卓)"多方向"抽屉
  8. React Native 中文版(含最新Android章节)
  9. 关于Android(安卓)设置监听的的四种方式
  10. Android(安卓)Camera预览