0

我正在制作和录制应用程序。对我来说最大的问题是当用户单击录制按钮时(我使用的是自定义录制器,而不是默认意图)并且如果他们再次快速点击它或 MediaRecorder 将抛出异常或视频文件将被损坏。我试图在按钮上设置启用(),但这似乎不起作用......我不知道为什么,似乎它们由于某种原因没有被禁用......

有人可以帮我吗?

4

1 回答 1

0

拥有多于一层的验证并没有什么坏处。除了记录按钮上的 setEnabled(false) 之外,尝试添加一些逻辑来防止脏写。代码假定您在单个线程上操作。

boolean inProgress;

onClick()
{
    inProgress = true;
    record();
}

public boolean record()
{
    if(!inProgress)
    {
        // record sound
        // don't forget to reset inProgress if record success/fail
    }
}
于 2013-04-26T23:41:41.113 回答