您如何保护用户免受Android中的危险按钮的影响?

时间:2010-11-02 03:06:41

标签: android button

我有一个应用程序,涉及随着时间的推移跟踪信息。该应用程序的一部分是重置按钮。为了避免意外重置,我使该按钮仅响应长按。但是,这种方法混淆了大约20%的新用户,他们认为重置按钮不能正常工作。

是否有更直观(和标准)的方法来保护按钮免受意外按下? (如果没有,我可以在我的按钮上添加某种自定义消息......)

3 个答案:

答案 0 :(得分:2)

Thilo说,确认对话框是标准答案。

如果你还没有这个,这是很好的阅读:

http://www.codinghorror.com/blog/2010/03/the-opposite-of-fitts-law.html

基本上,把它变小!长时间点击是一个很好的答案,但除非在其下方有“按住”标签,否则用户将遇到麻烦 - 这违反了用户模式,因为用户不习惯这样做(我可能不会'能够弄清楚。)

在iPhone上,为这样的操作设置“滑动”按钮(如解锁)是相当标准的,因为不小心滑动会更加困难。你可以实现类似的东西,但这个问题可能有点过头了。

答案 1 :(得分:1)

对Thilo的另一次投票和确认对话。 Google / Android也试图让开发人员使用长按作为Quick Action UI模式。见Android Developers Blog entry on Twitter app

答案 2 :(得分:0)

尽管这是一种解决方法,它仍然有效。

case R.id.bReset:
long startTime = System.nanoTime();
boolean running = true;
//show dialog with a single button - cancel. Outside the loop. Upon cancel, set cancelled to true.
//You can use DialogFragment or AlertDialog
while(running && !canceled){
    long elapsed = (System.nanoTime() - startTime) / 1000000;
    if(elapsed > securityTime && !canceled) {//set security time to amount of seconds * 1000
        //Dismiss dialog
        //reset
    }
}
break;

从目前接受的答案:

  

正如Thilo所说,确认对话框是标准答案。

它不一定是确认对话框,但如果意外按下,用户应该有机会取消操作,同时如果用户想要这样做则不需要进一步操作。