Como posso definir o tamanho da visualização da câmera para a taxa de proporção quadrada em um SurfaceView quadrado (como o Instagram)
Estou tentando desenvolver minha própria atividade de câmera, mas tenho um problema que não consigo resolver ...
O que eu quero, é algo muito semelhante ao instagram photo frame, e é isso que eu recebo:
Quando eu deveria conseguir algo assim:
e...
quando eu deveria ter algo como:
Eu acho que estou maanaging o SurfaceView e Camera preview bem, usando apenas
Camera.Parameters parameters = camera.getParameters();
camera.setDisplayOrientation(90);
e personalizado SurfaceView:
public class SquaredSurfaceView extends SurfaceView {
private int width;
private int height;
public SquaredSurfaceView(Context context) {
super(context);
}
public SquaredSurfaceView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public SquaredSurfaceView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
width = MeasureSpec.getSize(widthMeasureSpec);
height = width;
setMeasuredDimension(width, width);
}
public int getViewWidth() {
return width;
}
public int getViewHeight() {
return height;
}
}
O que estou fazendo errado? :-(