package com.baosight.menu;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ContextMenu.ContextMenuInfo;
import android.widget.TextView;
/**
* 上下文菜单
*
* @author shyboy(897948924@qq.com)
*
*/
public class ContextMenuActivity extends Activity {
/**
* 菜单项ID常量
*/
private static final int ITEM1 = Menu.FIRST;
private static final int ITEM2 = Menu.FIRST + 1;
private static final int ITEM3 = Menu.FIRST + 2;
private TextView contextTextView;// 声明视图控件
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.context);
contextTextView = (TextView) findViewById(R.id.contextMenu);
this.registerForContextMenu(contextTextView);// 为视图控件注册上下文菜单
}
/**
* 覆盖该方法添加上下文菜单项
*/
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
menu.add(0, ITEM1, 0, "红色背景");
menu.add(0, ITEM2, 0, "绿色背景");
menu.add(0, ITEM3, 0, "黄色背景");
}
/**
* 覆盖该方法,响应菜单选项被单击事件
*/
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
/**
* 当“红色背景”菜单被选择时
*/
case ITEM1:
contextTextView.setBackgroundColor(Color.RED);// 设置背景颜色为红色
break;
/**
* 当“绿色背景”菜单被选择时
*/
case ITEM2:
contextTextView.setBackgroundColor(Color.GREEN);// 设置背景颜色为绿色
break;
/**
* 当“黄色背景”菜单被选择时
*/
case ITEM3:
contextTextView.setBackgroundColor(Color.YELLOW);// 设置背景颜色为黄色
}
return true;
}
}
- 大小: 14.8 KB
分享到:
相关推荐
在本文中,我们将深入探讨如何在Android应用中创建和使用`ContextMenu`。 ### 1. 创建ContextMenu 首先,你需要在你的Activity或Fragment中注册对长按事件的监听。这可以通过重写`onCreateContextMenu()`方法来...
在安卓(Android)开发中,`ContextMenu`是一个重要的交互元素,它允许用户在长按某个视图或项时...通过学习和实践这个"ContextMenuDemo",开发者可以更好地理解和掌握在Android应用中创建和使用`ContextMenu`的方法。
在Android应用中,我们通常在ListView、RecyclerView或其他可滚动的视图中使用ContextMenu,以展示与选中项目相关的操作。 要创建一个ContextMenu,你需要遵循以下步骤: 1. **注册ContextMenu**:在你的Activity...
在本文中,我们将深入探讨`ContextMenu`的实现原理和使用方法,以及如何在Android应用中集成`ContextMenu`。 ### 1. 创建上下文菜单 要创建一个`ContextMenu`,首先需要在`Activity`或`Fragment`中注册它。这可以...
在Android开发中,`ContextMenu`是一个非常重要的交互元素,它为用户提供了一种在长按操作后展示更多选项的界面。`ContextMenu`不同于普通的`OptionsMenu`,后者通常在屏幕顶部(如Action Bar)显示,而`ContextMenu...
在标题和描述中提到的实例,我们将探讨如何在Android应用中实现和使用`ContextMenu`。 首先,我们需要创建一个布局文件来定义我们的列表视图。在给定的`main.xml`文件中,我们看到一个简单的`LinearLayout`容器,...
在`Android ContextMenu`的测试项目`android_contextmenu_test`中,可能包含了创建和使用`ContextMenu`的示例代码,你可以通过运行该项目来了解其具体实现和交互效果。通过深入理解并实践这些代码,你将能够熟练地在...
需要重写`onContextItemSelected(MenuItem item)`方法来处理用户在ContextMenu中选择的选项。根据传入的MenuItem对象,你可以判断用户选择了哪个菜单项,并执行相应的操作。 4. **触发ContextMenu**: 用户在屏幕...
下面将详细解释ContextMenu的工作原理以及如何在Android应用中使用它。 首先,我们来看`ContextMenu`的基本概念。它是Android系统提供的一种临时性的菜单,通常用于处理需要更多操作的场景,比如在邮件列表中长按一...
总的来说,`ContextMenu`是Android开发中不可或缺的一部分,熟练掌握其使用和原理能帮助我们更好地设计和实现交互丰富的应用。通过阅读源码,我们可以学习到更多Android系统内部的工作机制,并且能够灵活地运用这些...
接下来,你需要实现`onContextItemSelected(MenuItem item)`方法来处理用户在ContextMenu中选择的项。在这个方法中,你可以根据选中的菜单项ID执行相应的操作: ```java @Override public boolean ...
例如,在Android中,可以使用`registerForContextMenu()`方法注册要添加上下文菜单的视图,然后通过`onCreateContextMenu()`方法定义菜单项。 `contextmenu`的使用不仅提高了用户效率,也使得应用程序更加人性化。...
在Android开发中,ContextMenu是一个非常重要的功能,它允许用户在长时间按压某个视图或项时弹出一个上下文相关的操作菜单。这个压缩包“Android代码-ContextMenu上下文选项菜单长按后跳出菜单.zip”包含了关于如何...
在Android开发中,`ContextMenu`是一个非常重要的组件,它提供了在用户长按某个视图时显示的上下文操作菜单。这个菜单通常包含与所选内容相关的动作,如复制、粘贴、剪切等。在本案例中,我们将深入探讨`ContextMenu...
然后,我们需要重写`onContextItemSelected(MenuItem item)`方法,用于处理用户在ContextMenu中选择的菜单项。在这里,我们根据菜单项的ID或标题来判断用户的选择并执行相应的操作。 ```java @Override public ...
在安卓中,我们可以通过以下步骤来创建和使用`ContextMenu`: 1. **注册ContextMenu**:首先,在你的Activity或Fragment中,需要重写`onCreateContextMenu`方法。在这个方法里,你可以定义将要在`ContextMenu`中...
`ContextMenu`和`Menu`虽然在使用场景上有所不同,但它们都是Android应用中提供用户交互的重要组成部分。通过以上步骤,你可以轻松地在应用中实现它们的功能,为用户提供便捷的操作选项。 在提供的压缩包文件`...
重写`onContextItemSelected`方法,处理用户在ContextMenu中选择的项。通过`MenuItem`对象的`getItemId()`方法获取所选项的ID,然后执行相应的操作。 ```java @Override public boolean onContextItemSelected...
下面将详细探讨ContextMenu在Android中的实现原理、使用方法以及相关源码分析。 首先,为了展示ContextMenu,你需要在AndroidManifest.xml文件中为你的Activity添加一个android:contextMenu属性,声明该Activity...