gpt4 book ai didi

android延时手电筒

转载 作者:行者123 更新时间:2023-11-30 01:56:49 26 4
gpt4 key购买 nike

我制作了一个带有 2 个按钮的简单应用程序来测试手电筒。

button1.setOnClickListener...etc
if (cameraObj ==null){ return; }
Camera.Parameters cameraParams =cameraObj.getParameters();
if(cameraParams.getFlashMode() == null) { return;}
cameraParams.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
cameraObj.setParameters(cameraParams);
cameraObj.startPreview();

button2.setOnClick etc...
if(cameraObj==null){ return; }
Camera.Parameters cameraParams = cameraObj.getParameters();
cameraParams.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
cameraObj.setParameters(cameraParams);
cameraObj.stopPreview();

该应用程序在 2 台设备上进行了测试:HTC ONE 和 HTC DESIRE 500

该应用程序在两者上都运行良好。问题是:打开/关闭手电筒有延迟。

当我快速按下和关闭时,DESIRE 500 上的手电筒会随着我按下按钮而关闭和打开,但在 HTC ONE 上会有延迟(看起来你不能那么快地切换手电筒).可能是什么问题呢?

最佳答案

您可以通过使用 Hander 添加固定延迟来解决此问题,这将在延迟后触发闪光,

// variable to fix the timeout duration in milliseconds
// 1000 milliseconds = 1 second
double TIME_OUT = 2*1000;

new Handler().postDelayed(new Runnable() {

@Override
public void run() {

// time has been reached, turn the flash on
if (cameraObj ==null){ return; }
Camera.Parameters cameraParams =cameraObj.getParameters();
if(cameraParams.getFlashMode() == null) { return;}
cameraParams.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
cameraObj.setParameters(cameraParams);
cameraObj.startPreview();
}
}
}, TIME_OUT);

关于android延时手电筒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32091490/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com