Android: изменение размера предварительного просмотра камеры на экране - PullRequest
4 голосов
/ 10 августа 2011

В настоящее время предварительный просмотр камеры растянут на весь экран (854x480).Я хотел бы, чтобы вместо этого отображалось (427x240).

Вот соответствующий код для реализации камеры:

Camera.Parameters params = camera.getParameters();
params.setPreviewSize(427, 240); 
mCamera.setParameters(params);
public class CameraTest extends Activity {    
    private Preview mPreview;
    private DrawOnTop mDrawOnTop;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Hide the window title.
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        requestWindowFeature(Window.FEATURE_NO_TITLE);

        // Create our Preview view and set it as the content of our activity.
        // Create our DrawOnTop view.
        mDrawOnTop = new DrawOnTop(this);
        mPreview = new Preview(this, mDrawOnTop);
        setContentView(mPreview);
        addContentView(mDrawOnTop, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    }
}

Ответы [ 2 ]

1 голос
/ 08 апреля 2013

видел это на developer.android.com :

Если вы хотите установить конкретный размер для предварительного просмотра камеры, установите это в методе SurfaceChanged (), как указанов комментариях выше.При настройке размера предварительного просмотра вы должны использовать значения из getSupportedPreviewSizes ().Не устанавливайте произвольные значения в методе setPreviewSize ().

и пишите это, чтобы получить наименьшее:

        List<Size> list = mCamera.getParameters().getSupportedPictureSizes();
    Size size = list.get(0);
    int height = size.height;
    int minHeight=9999999;
    for(int i = 0; i<=list.size(); i++){
        if(list.get(i).height<minHeight){
            minHeight = list.get(i).height;
        }
    }

надеюсь, что это работает!

0 голосов
/ 26 сентября 2011

mCamera.setParameters (PARAMS); только установить параметры. Он будет передан на аппаратное обеспечение камеры.

Чтобы установить размер окна предварительного просмотра, необходимо изменить файл макета камеры.

...