`
不夜的星辰
  • 浏览: 88295 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

android dialog home键

 
阅读更多

在一个界面弹出AlertDialog后屏蔽home键

AlertDialog dialog = builder.create();
		dialog.setOnKeyListener(new DialogInterface.OnKeyListener() {

			@Override
			public boolean onKey(DialogInterface dialog, int keyCode,
					KeyEvent event) {
				// TODO Auto-generated method stub
				if (keyCode == KeyEvent.KEYCODE_HOME)
					return true;
				return false;
			}
		});
		dialog.show();
		dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);

  

public class BaseProgressDialog extends ProgressDialog {

	public BaseProgressDialog(Context context) {
		super(context);
		setOnShowListener(new DialogInterface.OnShowListener() {

			@Override
			public void onShow(DialogInterface dialog) {
				// TODO Auto-generated method stub
				getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
			}
		});
	}

	@Override
	public boolean dispatchKeyEvent(KeyEvent event) {
		// TODO Auto-generated method stub
		switch (event.getKeyCode()) {
		case KeyEvent.KEYCODE_HOME:
			return true;
		}
		return super.dispatchKeyEvent(event);
	}

	public static BaseProgressDialog show(Context context, CharSequence title,
			CharSequence message) {
		BaseProgressDialog dialog = new BaseProgressDialog(context);
		dialog.setTitle(title);
		dialog.setMessage(message);
		dialog.setIndeterminate(false);
		dialog.setCancelable(false);
		dialog.setOnCancelListener(null);
		dialog.show();
		return dialog;
	}
}

 

分享到:
评论

相关推荐

    android 4.0 上的HOME 键捕获

    综上所述,通过创建`TYPE_KEYGUARD_DIALOG`类型的对话框并设置适当的监听器,可以在Android 4.0系统上实现Home键的捕获。不过,开发者在实际应用中还需要考虑到兼容性、用户体验以及性能等方面的问题。

    Android dialog 去除虚拟按键的解决方法

    Android 部分机型没有物理按键,只有虚拟按键,Activity全屏方法如下: 1、在 setContentView(R.layout.activity_main);之前添加 getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_...

    Android 解决监听home键的几种方法

    Android 解决监听home键的几种方法 前言: 以下两种方法可以完美解决监听back键,home键,多任务键(最近任务键)。 一、使用注册广播监听home键、多任务键 演示图 创建一个广播代码如下: class InnerRecevier ...

    Android实现模态dialog

    在Android开发中,模态对话框(Modal Dialog)是一种常见的用户界面元素,它强制用户与当前弹出的对话框...在实际开发中,还要考虑如何处理返回键、Home键等事件,确保对话框能够正常关闭,避免出现未预期的用户体验。

    Android中Home键的监听和拦截示例

    例如,我们可以注册一个BroadcastReceiver,当接收到特定动作的广播时,判断其`reason`是否为`SYSTEM_DIALOG_REASON_HOME_KEY`,如果是,则说明是Home键被按压了。此时,我们可以根据需要执行特定的逻辑,比如弹出...

    Android监听Home键和Back键的区别介绍

    在Android开发中,对Home键和Back键的监听是非常基础而又重要的一项功能。本文将详细介绍监听这两个按键的区别以及如何实现Home键的监听,并且提供了一段示例代码。 首先,我们需要了解在Android系统中按下Home键和...

    Android监听Home键实例详解

    在Android系统中,监听Home键事件并非像监听其他硬件按键那样简单,因为Home键被设计为用户快速返回主屏幕的快捷方式,系统默认不会允许开发者对其进行完全的拦截和控制。然而,通过一些特殊的方式,我们可以实现对...

    自定义dialog实现登录框

    例如,当用户在登录过程中按下Home键,可以通过BroadcastReceiver监听系统广播,以便在用户重新打开应用时恢复Dialog的状态。 至于`BroadCastTest`这个文件名,可能是与测试Dialog关闭事件或Activity恢复时重新显示...

    android监听返回按钮事件的方法

    此外,如果希望在其他地方处理返回事件,例如在Fragment中,可以使用`onOptionsItemSelected()`方法监听`OptionsItemSelectedEvent`,并检查`MenuItem`的`itemId`是否为`android.R.id.home`,这代表了应用栏中的返回...

    dialog和spinner实例

    在描述的问题中,开发者遇到了一个具体的异常情况:当`Dialog`打开时,如果用户尝试通过点击设备的Home键返回主屏幕,可能会引发异常。这个问题通常与`Dialog`的生命周期管理不当有关。在Android中,`Activity`有...

    Android编程实现获取标题栏、状态栏的高度、屏幕大小及模拟Home键的方法

    当需要在应用内模拟用户按下Home键的行为时,可以通过启动一个带有特定Intent的动作来实现。 ```java public void goToDestop(Context context) { Intent intent = new Intent(Intent.ACTION_MAIN); intent....

    重写返回键,重写menu键

    case android.R.id.home: // 这里处理Menu键被按下的情况 // 可以自定义你的操作 return true; default: return super.onOptionsItemSelected(item); } } ``` 不过,现在大多数设备和应用使用的是ActionBar...

    android 自定义对话框+捕捉返回和菜单键

    在Android开发中,自定义对话框(Custom Dialog)是一种常用的设计模式,用于向用户展示一些重要信息或进行关键操作的确认。本项目着重探讨如何创建一个自定义对话框,并实现对返回键和菜单键的监听功能,以提供更加...

    android手机开机向导源码

    final String SYSTEM_DIALOG_REASON_HOME_KEY = "homekey"; @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(Intent....

    Android应用源码之返回键退出程序的两种方式.zip

    if (item.getItemId() == android.R.id.home) { Intent intent = new Intent(this, MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); finish(); return true; ...

    Windows上建立AndRoid开发环境.pdf

    - 选择“Run” > “Open Run Dialog”或“Run” > “Open Debug Dialog”。 - 选择“Android Application”,点击“New”。 - 输入配置名称。 - 选择启动的Activity。 - 点击“Apply”保存配置,点击“Run”或...

    Android一些模板代码

    android BitMap、Drawable、inputStream及byte[] 互转,dp和px之间转换,还原短信,横竖屏切换,获取各种窗体高度,禁用home键盘,开机启动,开机启动应用,挪动dialog的位置,判断网络状态,权限列表,设置apn,调节屏幕亮度,...

    android生命周期测试

    3. **暂停阶段**: 如果Activity被部分遮挡(比如半透明对话框)或完全隐藏(如按下Home键),系统会调用`onStop()`。此时,Activity对用户不可见,但其状态仍被内存保留。 4. **恢复阶段**: 当Activity重新回到前台...

    Android 用户界面之重写onKeyDown方法源码.zip

    除了`KEYCODE_BACK`,还有许多其他的按键代码,如`KEYCODE_MENU`(菜单键)、`KEYCODE_HOME`(主页键)等,开发者可以根据需求来处理这些按键的事件。 在深入研究`onKeyDown`之前,需要理解Android的事件处理机制。...

Global site tag (gtag.js) - Google Analytics