カメラアプリにズームコントロールを追加するこの機能があります。この関数は surfaceChanged() から呼び出されます
しかし、多くのデバイスでは、ズームアウト/ズームインのために + / - を押しても効果がありません。これらのデバイスは Zoom をサポートしています。また、コードは sony xperia で動作しているため、コードは正しい必要があります。
修正するのを手伝ってください。私がしなければならないことは他にありますか?
public void setZoomControl(Camera.Parameters params) {
ZoomControls zoomControls = (ZoomControls) findViewById(R.id.CAMERA_ZOOM_CONTROLS);
if (params.isZoomSupported()) {
maxZoomLevel = params.getMaxZoom();
Log.i("max ZOOM ", "is " + maxZoomLevel);
;
zoomControls.setIsZoomInEnabled(true);
zoomControls.setIsZoomOutEnabled(true);
zoomControls.setOnZoomInClickListener(new OnClickListener() {
public void onClick(View v) {
if (currentZoomLevel < maxZoomLevel) {
currentZoomLevel++;
camera.startSmoothZoom(currentZoomLevel);
}
}
});
zoomControls.setOnZoomOutClickListener(new OnClickListener() {
public void onClick(View v) {
if (currentZoomLevel > 0) {
currentZoomLevel--;
camera.startSmoothZoom(currentZoomLevel);
}
}
});
} else
zoomControls.setVisibility(View.GONE);
}