Frage

Ich möchte meine sperren kamera-Ansicht zu "Landschaft" Modus.Wenn ich in meiner App auf die einfache Schaltfläche klicke, öffnet sich die Kamera des Zeitgeräts und und das kamera sollte gesperrt sein zu "Querformat".Kann jemand die Lösung dieses Problems kennen?

Ich verwende diesen Code in "CaptureImageActivity.java" -Aktivität.Nach Ausführung dieser Aktivität wird also die Kamera meines Systems geöffnet.

btn1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            Intent i=new Intent(android.provider.MediaStore. ACTION_IMAGE_CAPTURE);
            i.putExtra(android.provider.MediaStore.EXTRA_SCREEN_ORIENTATION,ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);


            startActivityForResult(i,1000);

        }
    });

Und ich möchte diese Kameraansicht auf "Querformat" sperren.Und nach Lösung

<activity android:name=".CaptureImageActivity"
    android:screenOrientation="landscape"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

Nur die Aktivität "CaptureImageActivity" ist auf "Querformat" gesperrt.

War es hilfreich?

Lösung

Fügen Sie dies Ihrer Aktivität in der Manifestdatei hinzu

android:screenOrientation="portrait"

Andere Tipps

siehe diesen Link, um die Ausrichtung Ihrer Kamera zu sperren, verwenden Sie setDisplayOrientation (int degrees)

dokumentation finden Sie unter folgendem Link :http://developer.android.com/reference/android/hardware/Camera.html#setDisplayOrientation%28int%29

weitere Informationen finden Sie in dieser Antwort :

Wie stelle ich die Ausrichtung der Android-Kamera richtig ein?

By using setCameraDisplayOrientation=
public static void setCameraDisplayOrientation(Activity activity,
         int cameraId, android.hardware.Camera camera) {
     android.hardware.Camera.CameraInfo info =
             new android.hardware.Camera.CameraInfo();
     android.hardware.Camera.getCameraInfo(cameraId, info);
     int rotation = activity.getWindowManager().getDefaultDisplay()
             .getRotation();
     int degrees = 0;
     switch (rotation) {
         case Surface.ROTATION_0: degrees = 0; break;
         case Surface.ROTATION_90: degrees = 90; break;
         case Surface.ROTATION_180: degrees = 180; break;
         case Surface.ROTATION_270: degrees = 270; break;
     }

     int result;
     if (info.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
         result = (info.orientation + degrees) % 360;
         result = (360 - result) % 360;  // compensate the mirror
     } else {  // back-facing
         result = (info.orientation - degrees + 360) % 360;
     }
     camera.setDisplayOrientation(result);
 }
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top