`
wylsx
  • 浏览: 11197 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

控制android手机的back键方法

阅读更多
android 的 back键 返回上一级Activity,当然最终会返回到我们的程序的上一级=>主界面,对于很多程序来说不太友好,那么就让我们的程序友好一下吧O(∩_∩)O!

在我们程序的主Activity中 重写一下 onKeyDown事件:
	@Override
	public boolean onKeyDown(int keyCode,KeyEvent event) {
		// 是否触发按键为back键
		if (keyCode == KeyEvent.KEYCODE_BACK) {
			// 弹出 退出确认框
			this.setConfrimDialogListener(new DialogInterface.OnClickListener() {
				// 确定 按钮单击事件
				@Override
				public void onClick(DialogInterface dialog, int which) {
					removeDialog(BaseView.DIALOG_YES_NO_MESSAGE);
					// back键默认执行方法
					// BaseView.this.finish();
					// 结束当前的进程(我们的程序)===>真正意义上的退出
					android.os.Process.killProcess(android.os.Process.myPid());
				}
			});
			this.setConfrimDialogText(R.string.alert_dialog_exit_confirm);
			this.showDialog(BaseView.DIALOG_YES_NO_MESSAGE);
			/*
			 * 下面这句话很重要,return true
			 * 相当于j2se里事件对象的consume()方法,意思是系统不会继续执行该事件,因为已经被消费掉了,O(∩_∩)O~
			 * 可以看该事件的源码说明:* @return boolean Return true if this event was consumed.
			 */
			return true;
		} else// 如果不是back键正常响应
			return super.onKeyDown(int keyCode,event);
	}
6
2
分享到:
评论

相关推荐

    android测试键值apk(一个测试键值的apk,将apk安装到系统,操作键盘或者遥控器,会把相应键值打印出来).zip

    此外,`keyTest.apk`还可能提供了对特殊键值的测试,比如BACK键、HOME键、搜索键等,这些键在Android中有着特殊的含义和处理方式。通过这个工具,开发者可以确保自己的应用在处理这些系统级键值时不会出现意外的行为...

    Android_按键的键值

    以上介绍了Android按键键值的一部分内容,包括常见的方向键、数字键、字母键以及特殊功能键。通过理解和使用这些键值、动作码和标记,开发者能够更灵活地处理用户的输入事件,从而提高应用程序的用户体验。在实际...

    详解Html5 监听拦截Android返回键方法

    通过`history.back()`, `history.forward()`和`history.go()`方法,我们可以让浏览器导航到历史记录中的前一个或后一个页面,或者直接跳转到指定位置。 HTML5新增的`pushState()`方法允许我们在不实际加载新页面的...

    Android应用源码之按键的处理.zip

    硬键通常是指手机上的物理按键,如电源键、音量键等;软键则指屏幕上的虚拟按键,如回退键、菜单键、主页键等。 1. 捕获按键事件 处理按键事件通常通过重写Activity类的`onKeyDown()`和`onKeyUp()`方法实现。这两个...

    ANDROID_KEYCODE.docx

    5. **KEYCODE_BACK** (返回键):键值为4,是Android中最常用的功能键之一,用于返回上一级界面或退出当前应用。 6. **KEYCODE_SEARCH** (搜索键):键值为84,通常用于启动设备上的搜索引擎或在当前应用中执行搜索...

    Android Service和Activity基于串口蓝牙模块的双向通信

    但是,这种方法存在一个缺陷:当用户按下手机的 Home 或者 Back 键时,程序退出,下次重新启动软件时需要重新建立蓝牙链接。 为了克服这个问题,作者将蓝牙模块的调用放到 Service 里面使用。Service 是 Android 中...

    按键监听Demo

    【标签】"keyevent"表明这个Demo专注于按键事件的处理,这是Android应用开发中常见的需求,特别是对于游戏和需要精细控制的应用。 在【压缩包子文件的文件名称列表】中,`KeyEvevtSample`可能包含了一个完整的...

    手柄控制器 v1.1.2

    Sixaxis Controller可以让PS3 PS4手柄Sixaxis和DualShock 3作为蓝牙输入设备在Android手机和平板上使用,但是需要root权限。 注意事项: - 需要ROOT权限! - 需要手动设置SixaxisPairTool和一个迷你USB电缆与PC控制...

    android 输入法弹出布局自动上移

    在Android应用开发中,"android 输入法弹出布局自动上移"是一个常见的用户体验问题,尤其在设备屏幕空间有限,如手机或小尺寸平板上。当用户在文本输入框(EditText)中点击,输入法键盘弹出时,由于屏幕高度限制,...

    安卓 adb shell input keyevent 按键大全.txt

    ADB是Google开发的一款用于与Android设备进行通信的工具,它提供了丰富的命令行选项来控制和调试Android设备。通过ADB,开发者可以安装应用、运行shell命令、抓取日志等,而ADB Shell Input Keyevent则是其中一项...

    android模拟器快捷键

    4. **Back键**:返回上一级界面或退出当前程序。在键盘上,你可以按下`ESC`键来模拟这个操作。 5. **Call/Dial键**:启动拨号面板或接听来电。在模拟器中,使用`F3`键来模拟这个功能。 6. **Hangup/Light Off键**...

    Android的Activity的Launch模式之Standard案例

    - **导航行为**:通过BACK键,用户会逐个退出栈中的Activity,最后退出整个任务栈。 - **Intent重定向**:如果Intent没有指定明确的目标Activity,系统可能会根据需要创建新的Activity实例。 4. **案例分析** 在...

    AndroidUI之Fragment

    `Fragment`的概念引入于Android 3.0 (API level 11),目的是为了更好地支持平板电脑等大屏幕设备,但现在已经广泛应用于各种Android设备上,包括手机和平板。 ### 1. `Fragment`的基本概念 `Fragment`可以视为...

    Android用户界面设计 Android3.0引入的新的片断(Fragment)API.zip

    开发者可以通过`addToBackStack()`方法来控制片断交易是否加入回退栈。 **注意事项** 1. 片断间的通信应避免使用静态变量,以防内存泄漏。 2. 片断的生命周期可能会受到活动生命周期的影响,因此在处理保存和恢复...

    手机软件交互设计经验分享–硬件、系统平台和设计规范的影响.pdf

    对于Android,其保留的menu和back硬键使得设计时可以沿用一些传统的交互模式,同时,它的开放性也为开发者提供了更多的自由度。设计规范应明确各个平台的差异,比如在Android中,菜单的调出和收回机制,以及与触摸...

    android Fragment学习 生命周期

    Fragment可以独立拥有自己的视图层次结构,并且有自己的生命周期方法,这些方法与Activity的生命周期方法类似,但更为细致,使开发者能更精确地控制界面组件的行为。 Fragment的生命周期主要包括以下几个关键阶段:...

    Android开发技巧总汇(2)

    - **Actvity堆栈**:Android系统维护了一个Activity堆栈,新启动的Activity会被压入堆栈顶,当前Activity在堆栈顶部,按下Back键时,会弹出栈顶Activity,即销毁当前Activity。 2. **Intent对象调用Activity实例**...

    手机软件交互设计经验分享–硬件、系统平台和设计规范的影响整理.pdf

    Android在保持兼容性的同时,引入了menu和back硬键,提供了一个相对平衡的功能与设计空间。 设计规范在手机交互设计中扮演着关键角色,它们定义了控件样式、布局规则、响应方式等,有助于保证设计一致性并减少重复...

Global site tag (gtag.js) - Google Analytics