`
kingbinchow
  • 浏览: 124520 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

自定义menu,用PopupWindow截获KeyEvent

 
阅读更多
public boolean onKeyDown(int keyCode, KeyEvent event) {
		switch (keyCode) {
		case KeyEvent.KEYCODE_MENU: // 按下“menu”键的动作
			// 选项菜单已弹出,不再弹出新的窗口
			if (state == 1)
				return false;
			// 装载选项菜单布局文件
			layout = (LinearLayout) getLayoutInflater().inflate(R.layout.menu_layout, null);
			// 创建 PopupWindow 对象,并在指定位置弹出用于显示菜单的窗口
			pop = new PopupWindow(layout, getWindowManager().getDefaultDisplay().getWidth(), getWindowManager()
					.getDefaultDisplay().getHeight());
			// 设置弹出窗口的位置
			pop.showAtLocation(layout, Gravity.BOTTOM, 0, 0);
			// 弹出选项菜单后,将状态变量设为1,表示选项菜单已弹出
			state = 1;
			return false;
		case KeyEvent.KEYCODE_BACK: // 按下“back”键的动作
			if (state == 1) {
				// 如果选项菜单已弹出,关闭它
				pop.dismiss();
				// 将状态变量设为选项菜单已关闭
				state = 2;
			} else if (state == 2) {
				// 如果选项菜单还没有显示,或已经关闭,则直接关闭当前的 Activity
				finish();
			}
			return false;
		}
		return true;

	}
分享到:
评论

相关推荐

    android使用popupwindow自定义menu菜单

    本篇将详细介绍如何在Android中利用`PopupWindow`来实现自定义的menu菜单。 首先,我们需要了解`PopupWindow`的基本用法。`PopupWindow`类提供了创建和管理浮动窗口的功能。它可以在任意视图上方显示,可以设置大小...

    Android自定义下拉框(PopupWindow实现)

    本篇将详细讲解如何使用PopupWindow实现一个定制化的下拉框。 首先,理解PopupWindow的基本概念。PopupWindow是Android提供的一种轻量级窗口,可以用来弹出一个浮动视图。它通常用于创建快捷菜单、下拉列表或者其他...

    自定义下拉菜单 PopupWindow

    android自定义下拉菜单,通过PopupWindow封装,可根据需要嵌入到工程。思路实现看文章 http://blog.csdn.net/garwen_yang/article/details/51252462

    自定义删除窗口PopupWindow

    在本Demo中,我们将会深入探讨如何自定义删除窗口PopupWindow,以及如何将其集成到你的应用程序中。 首先,PopupWindow的基本用法包括创建实例、设置内容视图、设置大小和位置,以及显示和隐藏。创建PopupWindow时...

    android自定义通用PopupWindow

    封装`PopupWindow`的第一步是创建一个自定义的类,继承自`PopupWindow`。在这个类中,我们可以添加一些通用的方法,例如设置宽高、内容视图、背景颜色等。下面是一个基础的实现: ```java public class ...

    自定义Dialog的各种样式,包括自定义视图、PopupWindow

    本文将深入探讨如何自定义Dialog及其样式,以及如何使用PopupWindow。 首先,我们来了解一下Dialog。Dialog是Android系统提供的一个组件,用于弹出一个窗口,它浮于应用程序之上,可以包含一些提示信息或交互元素。...

    自定义样式加popupwindow3个zip包,各种效果

    在实际应用中,PopupWindow常常与其他组件结合使用,例如ListView、RecyclerView,展示下拉菜单或选项列表。此外,还可以配合Adapter实现动态数据加载,提供更丰富的功能。 文件"popupwindow"可能包含的是基础的...

    Android自定义View仿支付宝输入六位密码功能,自定义支付密码PopupWindow

    9. **适配多屏幕**:确保自定义View和PopupWindow能在不同尺寸和分辨率的设备上正常工作,使用比例值和布局权重来适应屏幕尺寸变化。 通过以上步骤,我们可以构建一个与支付宝类似的支付密码输入界面。这个过程涉及...

    自定义Spinner(PopupWindow实现的弹出下拉框)

    本节我们将深入探讨如何使用PopupWindow实现一个自定义的Spinner,以获得类似网站下拉窗口的效果。 首先,我们来理解一下Spinner的基本概念。Spinner是一种触摸交互的控件,用户点击后会弹出一个列表,供用户选择。...

    android 自定义菜单 使用PopupWindow实现菜单的各种效果

    此为示例代码,详细讲解请参考博文: http://blog.csdn.net/tangron/article/details/20907243 如对资源内容有疑问,请到博客中留言。 欢迎大家评阅,谢谢

    Android简单实现自定义弹框(PopupWindow)

    在Android开发中,自定义弹框是经常遇到的需求,它能提供一种轻量级的交互方式,不打断用户的正常操作流程。...记住,使用PopupWindow时,要注意弹框与用户交互的逻辑,避免造成混乱或遮挡重要信息。

    自定义popupWindow修改版

    在这个“自定义popupWindow修改版”项目中,我们将深入探讨如何根据需求定制PopupWindow,以实现更丰富的功能和更好的用户体验。 首先,PopupWindow的基本用法包括创建PopupWindow对象、设置显示内容、指定显示位置...

    andorid 自定义popupwindow菜单

    在Android开发中,自定义`PopupWindow`是一个常见的需求,特别是在设计交互丰富的界面时,它能为用户提供一种快捷、临时的交互方式。`PopupWindow`允许开发者创建弹出式视图,可以显示在屏幕的任意位置,常用于下拉...

    Android编程实现的自定义弹窗(PopupWindow)功能示例

    本文实例讲述了Android编程实现的自定义弹窗(PopupWindow)功能。分享给大家供大家参考,具体如下: 在开发过程中,如果要弹出一个对话框,一般是使用AlertDialog,但其使用限制太大,灵活性不够,所以我们常需要用到...

    自定义popupWindow

    使用`showAsDropDown()`或`showAtLocation()`方法显示PopupWindow,用`dismiss()`方法关闭。`showAsDropDown()`常用于在某个控件下方显示,而`showAtLocation()`允许指定绝对位置。 ```java popupWindow....

    popupwindow实现自定义Menu

    本篇将深入探讨如何使用`PopupWindow`实现自定义`Menu`,并添加动画和点击事件。 首先,我们需要了解`PopupWindow`的基本用法。`PopupWindow`是`android.widget`包下的一个类,它提供了一个可以显示任意视图的窗口...

    Android自定义PopupWindow

    在实际项目中,`PopupWindow`经常与其他组件结合使用,如Spinner、AdapterView等,实现更丰富的交互体验。同时,注意性能优化,避免因大量`PopupWindow`实例导致内存泄漏或性能下降。 通过学习和实践,开发者可以...

    android自定义PopupWindow

    2. **阴影效果**:可以通过 `popupWindow.setBackgroundDrawable()` 设置一个具有阴影效果的Drawable,或者在自定义View中使用 `CardView` 容器来达到阴影效果。 3. **动画效果**:可以添加弹出和消失的动画,比如...

    android 自定义spinner popupWindow

    本篇将深入探讨如何自定义Android的Spinner,并结合PopupWindow实现更丰富的功能。 首先,Spinner的基本使用涉及到以下几个步骤: 1. 在XML布局文件中添加Spinner元素,设置其ID和适配器数据源。 2. 创建一个...

    自定义PopupWindow

    在本教程中,我们将深入探讨如何自定义一个简单的PopupWindow,包括设置其布局、添加点击事件以及适配初学者的理解。 首先,PopupWindow的核心在于它的布局文件。在Android项目中,创建一个新的XML布局文件,例如`...

Global site tag (gtag.js) - Google Analytics