Android摄像头预览在大屏幕设备上无法正常工作

Android摄像头预览在大屏幕设备上无法正常工作,android,camera,android-camera,camera-calibration,Android,Camera,Android Camera,Camera Calibration,我的应用程序中的摄像头预览在较大屏幕设备(如Nexus 4/5)上无法正常工作。它在较小屏幕设备(如Nexus S)上工作正常。我在我的应用程序中使用了宽度和高度参数,它们基本上是屏幕大小。如果我手动设置这些参数,应用程序工作正常,但如果我动态计算大小并在应用程序中使用,相机预览无法正常工作。有关详细信息,请参见下图: “应用程序nexus 5的屏幕截图” 活动\u main.xml <RelativeLayout android:id="@+id/containerImg

我的应用程序中的摄像头预览在较大屏幕设备(如Nexus 4/5)上无法正常工作。它在较小屏幕设备(如Nexus S)上工作正常。我在我的应用程序中使用了宽度和高度参数,它们基本上是屏幕大小。如果我手动设置这些参数,应用程序工作正常,但如果我动态计算大小并在应用程序中使用,相机预览无法正常工作。有关详细信息,请参见下图:

“应用程序nexus 5的屏幕截图”

活动\u main.xml

<RelativeLayout
        android:id="@+id/containerImg"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="fitXY"
        >



            <SurfaceView
                android:id="@+id/surfaceView1"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_centerInParent="true"
                android:scaleType="fitXY"
                />

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:src="@drawable/kitten_2"
                android:adjustViewBounds="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentEnd="true"
                tools:ignore="ContentDescription"
                android:scaleType="fitXY"
                />
要设置关联布局大小,请执行以下操作:

RelativeLayout.LayoutParams layoutParams = new             
RelativeLayout.LayoutParams(width,height); 
mImageView.setLayoutParams(layoutParams);
mImageView.setOnTouchListener(this);
要设置相机预览大小,请执行以下操作:

if (previewing) {
            camera.stopPreview();
            previewing = false;
        }
        try {
            Camera.Parameters parameters = camera.getParameters();
            parameters.setPreviewSize(width,height);
            parameters.setPictureSize(width,height);
谢谢你的帮助

对不起,英语是我的第二语言

if (previewing) {
            camera.stopPreview();
            previewing = false;
        }
        try {
            Camera.Parameters parameters = camera.getParameters();
            parameters.setPreviewSize(width,height);
            parameters.setPictureSize(width,height);