单击按钮时,我正在调用以下函数。
private void badButtonHandler() {
Camera.Parameters params = mCamera.getParameters();
params.setColorEffect(Camera.Parameters.EFFECT_NEGATIVE);
mCamera.setParameters(params);
if(thread != null){
thread = null;
}
thread = new Thread()
{
@Override
public void run() {
try {
while(true) {
sleep(5000);
Camera.Parameters params = mCamera.getParameters();
params.setColorEffect(Camera.Parameters.EFFECT_NONE);
mCamera.setParameters(params);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
thread.start();
}
此功能旨在在单击按钮 5 秒后更改相机的色彩效果。第一次按下相关按钮时,它的行为与预期相同。但是对这个函数的额外调用并没有像预期的那样运行。即,第二次等待 2 秒,之后每次点击都会降低到较低的值。