zoukankan      html  css  js  c++  java
  • Android里面如何编写退出主程序的提示代码

    当用户选择“确定”,就退出当前的对话框。其中,有个很重要的函数,Activity.finish(),通过调用这个函数,退出当前运行的整个Android程序.

    当用户选择“取消”的时候,只要单纯的retuan,即可返回主程序.

    我们可以定义一个showTips()的专用方法在main Activity里面,那么,每次我们写的时候,就调用这个函数的就可以了。

    private void showTips(){

    AlertDialog alertDialog = new AlertDialog.Builder(Activity.this)

    .setTitle(“退出程序”)

    .setMessage(“是否退出程序”)

    .setPositiveButton(“确定”, new DialogInterface.OnClickListener() {

    public void onClick(DialogInterface dialog, int which)

    Activity.this.finish();

    }

    }).setNegativeButton(“取消”,

    new DialogInterface.OnClickListener() {

    public void onClick(DialogInterface dialog, int which)

    return;

    }}).create(); //创建对话框

    alertDialog.show(); // 显示对话框

    }

    那么,在哪里调用这个提示的方法呢?

    最初我的想法是打算在Android 的 主Activity 里面的onDestory() 函数里面定义的,后来试了一下,发觉其实这个函数是在当初Activity退出的时候,才会被调用的,如果在这里才调用,就太迟了。

    所以,应该找到的是返回按键的响应时间,也就是函数Activity. onKeyDown(int keyCode, KeyEvent event) 函数里面响应事件的发生.

    @Override

    public boolean onKeyDown(int keyCode, KeyEvent event) {

    if(keyCode==KeyEvent.KEYCODE_BACK && event.getRepeatCount()==0){

    this.showTips();

    return false;

    }

    return false;

    }

    至此,通过复写onKeyDown函数,当用户单击返回的按钮的时候,就会弹出提示的对话框,可以有效地防止用户由于失误引起的不必要的退出。

  • 相关阅读:
    基于 HTML5 + WebGL 的 3D 风力发电场
    基于HTML5 WebGL的工业化3D电子围栏
    基于 HTML5 WebGL 和 VR 技术的 3D 机房数据中心可视化
    基于 HTML5 Canvas 的 Web SCADA 组态电机控制面板
    基于 HTML5 WebGL 与 WebVR 3D 虚拟现实的可视化培训系统
    基于 HTML5 WebGL 的 3D 服务器与客户端的通信
    什么是 SUID, SGID 和 Sticky bit
    贝塞尔曲线切割圆角
    iOS-获取当前View所在的控制器
    block(八)作用域
  • 原文地址:https://www.cnblogs.com/qingblog/p/2597794.html
Copyright © 2011-2022 走看看