我有一个相机应用程序,我可以做一些帮助。在我的相机片段中,我调用方法takePicture,我打算暂停预览(根据the API)。
在我的旧HTC One X上,这是真的,但刚刚升级到HTC One mini2,预览不再暂停。
这有合理的原因吗?我的代码有任何建议的更改吗?
我使用以下代码调用takePicture:
if (myCamera != null) {
FragmentManager fm = getFragmentManager();
PhotoHandler myphotohandler = new PhotoHandler(fm, mycontext, getView(), Photo_Type, photonumber, getDir(Project_Name), lmanager, projecttag);
ShutterCallback shutter = new ShutterCallback() {
public void onShutter() {
button_takephoto = (ImageButton) getView().findViewById(R.id.button_takephoto);
button_takephoto.setImageResource(R.drawable.shutter_closed);
}
};
myCamera.takePicture(shutter, null, null, myphotohandler);
我的PhotoHandler类实现了PictureCallback。
任何建议或类似经历都将不胜感激。
答案 0 :(得分:0)
我找到的解决方案是在Camera.ShutterCallback中手动停止预览。最初,我只有一个Camera.PictureCallback处理我的应用程序对拍摄照片的响应。
if (myCamera != null) {
PhotoHandler myphotohandler = new PhotoHandler();
ShutterCallback shutter = new ShutterCallback() {
public void onShutter() {
myCamera.stopPreview();
}
};
myCamera.takePicture(shutter, null, null, myphotohandler);
}