拍照功能横竖屏处理方法

1)、设置Activity强制横屏,成像效果不错,所见即所拍,但是系统组件一样跟着横屏,比如菜单,图片预览对话框等。
//横屏 //setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

2)、设置相机预览强制横屏,能解决竖屏变形问题,但是横屏又悲剧了。
//设置相机强制横屏,防止预览变形 //mCamera.setDisplayOrientation(90);

3)、吸收方法1)和2)的教训,我们来一个完全之策:
设置Activity的属性:android:configChanges="orientation|keyboardHidden"(在Manifest文件的Activity声明中),然后在代码中监听横竖屏幕切换,再设置相机预览角度。

//横竖屏切换
        @Override
        public void onConfigurationChanged(Configuration newConfig) {
                // TODO Auto-generated method stub
                super.onConfigurationChanged(newConfig);
                if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
                        //横屏
            mCamera.setDisplayOrientation(0);
        }else{
                //竖屏
                mCamera.setDisplayOrientation(90);
        }
        }

  

转:http://www.eoeandroid.com/thread-188190-1-1.html

posted @   吴超文  阅读(2934)  评论(1编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示