- 浏览: 707585 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
葫芦瓢:
葫芦瓢 写道专注IT 写道请问楼主demo中为什么是Custo ...
Android Scroller简单用法 -
葫芦瓢:
专注IT 写道请问楼主demo中为什么是CustomView中 ...
Android Scroller简单用法 -
u011493452:
注册账号给楼主点赞!
Android Scroller简单用法 -
jiduoduo:
整理的不错!
Android文件存储 -
xiaofeng0817166:
http://deerchao.net/tutorials/r ...
Java正则表达式应用
ContextMenu称为上下文菜单,一般在控件上长按时弹出。今天我们学习ContextMenu的用法,这里与listview相结合,先在ListView显示几个Item,然后在Item上长按,弹出一个菜单(就是ContextMenu),点击菜单上的项目,提示刚才长按的Item的Position。
main.xml文件
菜单有3个条目,在/res/menu/test_menu.xml中定义,和OptionMenu差不多,只是没有Icon
main.xml文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:id="@+id/text" android:text="zzz" android:textSize="18sp" android:textColor="#FFFFFF" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ListView android:id="@+id/list" android:layout_width="fill_parent" android:layout_height="fill_parent"> </ListView> </LinearLayout>
菜单有3个条目,在/res/menu/test_menu.xml中定义,和OptionMenu差不多,只是没有Icon
package com.hello.menu; import android.app.Activity; import android.os.Bundle; import android.view.ContextMenu; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ContextMenu.ContextMenuInfo; import android.widget.AdapterView.AdapterContextMenuInfo; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.TextView; public class ApiDemos extends Activity { /** Called when the activity is first created. */ private TextView mTextView; private ListView mListView; private String [] values; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mTextView = (TextView) findViewById(R.id.text); //下面的代码用于初始化一些数据 values = new String[30]; StringBuilder sb = new StringBuilder("z"); for (int i = 0; i < values.length; i++) { sb.append(i); values[i] = sb.toString(); } mListView = (ListView) findViewById(R.id.list); mListView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, values)); mTextView.setText(String.valueOf(mListView.getAdapter().getCount())); //为ListView注册ContextMenu registerForContextMenu(mListView); } //创建ContextMenu @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { // TODO Auto-generated method stub if (v.getId() == R.id.list) { MenuInflater inflater = getMenuInflater(); menu.setHeaderTitle("contextView sample").setHeaderIcon(R.drawable.icon); inflater.inflate(R.menu.test_menu, menu); } super.onCreateContextMenu(menu, v, menuInfo); } @Override public boolean onContextItemSelected(MenuItem item) { // TODO Auto-generated method stub if (item.getMenuInfo() instanceof AdapterContextMenuInfo) { AdapterContextMenuInfo menuInfo = (AdapterContextMenuInfo) item.getMenuInfo(); //处理菜单的点击事件 switch (item.getItemId()) { case R.id.call: mTextView.setText(item.getTitle().toString() + menuInfo.position); break; case R.id.cc: mTextView.setText(item.getTitle().toString() + menuInfo.position); break; case R.id.poweroff : mTextView.setText(item.getTitle().toString() + menuInfo.position); break; } } return super.onContextItemSelected(item); } }
发表评论
-
Android Notification的使用
2012-10-20 19:28 9778Android 4.1 (Jelly Bean ... -
短信拦截
2012-09-25 20:40 2093最近写一个应用(A),需要拦截短信分析。一般是 ... -
Android Scroller简单用法
2012-08-01 16:35 65892Android里Scroller类是为了实现Vi ... -
Android 使用WebView.loadData中文乱码解决办法
2012-07-19 15:09 9601博主在使用WebView的loadData方法时发 ... -
Android HttpClient基本使用方法
2012-07-05 14:15 107900这里只介绍如何使用HttpClient发起GET或者POST请 ... -
Android XML定义颜色
2012-06-09 13:15 0在res/colors.xml中添加如下代码: 定义C ... -
Activity和Task的设计思路和方法
2012-03-29 20:20 1259Activity和 Task是 Android ... -
显示PopupWindow
2012-03-16 10:04 16679PopupWindow可 ... -
存储文件的ContentProvider
2012-03-08 23:37 9413基于SQLite的ContentProvider ... -
Android文件存储
2012-03-08 22:34 19478Internal Storage内部存储空 ... -
Android 使用Notification
2012-03-07 10:26 2245用惯了Android的人在刚拿到iPhone的 ... -
Android用软键盘将整个界面推上去
2012-03-04 17:11 35908在Android UI中 ... -
onInterceptTouchEvent和onTouchEvent调用时序
2012-02-11 23:42 1073onInterceptTouchEvent() ... -
使用ConnectivityManager监听网络状态变化
2011-12-24 11:16 29860mIntenFilter = new IntentFilte ... -
Window Manager
2012-03-22 23:51 1559Android的窗口机制基于WindowManager,可以通 ... -
CommonsWare Android Components
2011-12-17 16:10 1767CommonsWare Android Com ... -
Android中图片缩放
2011-12-17 00:09 1933下载的图片如果过大,可能导致内存溢出。需要做压 ... -
Android 使用Parcelable序列化对象
2011-12-16 23:43 36608Android序列化对象主要有两种方法,实现S ... -
PreferenceActivity
2011-12-12 22:54 923传送门:http://www.cnblogs.com/wser ... -
View.scrollBy()与View.scrollTo()的使用
2011-12-12 22:40 19615scrollTo()和scrollBy()都是V ...
相关推荐
本篇文章将详细讲解如何在Android中为ListView创建上下文菜单。 首先,我们需要在布局文件中定义ListView。如示例中的`main.xml`,它包含了一个LinearLayout,里面有一个TextView和一个ListView。ListView占据整个...
总结起来,Android的ContextMenu为用户提供了方便的长按操作选项,通过创建菜单资源、注册和处理菜单项,可以轻松地在应用中实现这一功能。不过,开发者需要根据具体应用场景来决定是否使用ContextMenu,并考虑其与...
1. **创建ContextMenu对象**:首先,我们需要在代码中创建一个`ContextMenu`对象,例如: ```csharp ContextMenu contextMenuStrip = new ContextMenu(); ``` 2. **添加菜单项**:然后,我们可以通过`...
本篇文章将深入探讨如何在ListView中实现单击和长按事件,弹出上下文菜单(ContextMenu)。这通常用于提供针对列表项的快捷操作,提升用户体验。 首先,我们需要在清单文件(`AndroidManifest.xml`)中为我们的Activity...
还可以为ListView添加右键菜单,以便进行编辑、删除等操作。这需要创建一个ContextMenuStrip,添加菜单项,并设置事件处理程序: ```csharp ContextMenuStrip contextMenu = new ContextMenuStrip(); ...
这个项目"ContextMenu"提供的代码示例涵盖了从创建到使用的整个流程,对于开发者来说,是一个很好的学习资源。通过深入研究和实践,我们可以更好地理解和掌握Android的`ContextMenu`功能,并将其灵活地应用到自己的...
6. 设置图像列表:如果需要显示图标,需要创建一个图像列表,并通过`LVM_SETIMAGELIST`消息将其设置为ListView的图像列表。 7. 处理消息:实现窗口消息处理函数,处理如`WM_NOTIFY`、`WM_CONTEXTMENU`等消息。`WM_...
在Android开发中,`ContextMenu`和`Menu`是两种用于为用户提供操作选项的重要组件。它们在用户界面上提供了一个交互式的方式,让用户可以对选定的项目执行特定的操作。本实例将详细讲解`ContextMenu`和`Menu`的创建...
在ListView中嵌套ComboBox,可以为每个ListView项提供额外的选择或操作。实现这种效果通常需要以下步骤: 1. 在ListView的ItemDataBound事件中,动态创建ComboBox控件。 2. 将ComboBox添加到ListView的ItemTemplate...
在这个场景中,我们将探讨如何利用ArrayList来实现ListView,以及如何添加编辑、新增、删除功能,以及在Activity间传递参数,同时还会涉及到ContextMenu和OptionsMenu的实现,以及长按事件的处理。 首先,我们需要...
为了给`TreeViewItem`添加右键菜单,我们需要创建一个`ContextMenu`并将其附加到`TreeViewItem`上。同时,我们需要为`TreeView`设置`PreviewMouseRightButtonDown`事件处理程序,以捕获右键点击并打开菜单。以下是...
首先,在XAML中创建ContextMenu并添加MenuItem,每个MenuItem绑定到ViewModel中的ICommand: ```xml <ListView x:Name="listView" ItemsSource="{Binding Items}"> <ListView.ContextMenu> <ContextMenu> 操作1...
2. 在ListView的Adapter中,为每个列表项创建一个可复制的数据模型。这个数据模型应该包含需要复制的文本信息。 3. 在Activity中,初始化ClipboardManager并设置监听器,以便在复制或粘贴时获取和设置数据。 4. ...
在Android开发中,上下文菜单(ContextMenu)是一种常用的交互元素,它为用户提供了一种针对特定视图或数据项的操作选项。上下文菜单通常在长按某个视图后弹出,显示与该视图相关的操作。在本文中,我们将深入探讨`...
1. **创建Adapter**: 在Adapter中,你需要重写`getView()`方法,为每个列表项创建并返回一个View。这个View通常包含一个布局,布局中包含你需要显示的数据元素。 2. **设置监听器**: 为了实现长按显示菜单,我们...
这个压缩包文件"安卓Android源码——ContextMenu上下文选项菜单,长按后跳出菜单.zip"包含了一个名为"ContextMenuDemo"的示例项目,用于演示如何在应用程序中实现`ContextMenu`。 首先,让我们理解`ContextMenu`的...
首先,我们从创建ListView实例开始。在Windows Forms中,可以通过设计界面或代码直接创建一个ListView控件。在设计界面中,只需从工具箱拖拽ListView到窗体上;在代码中,可以使用`ListView listView1 = new ...
在自定义的ListView适配器中,为每个列表项创建一个包含CheckBox的布局。然后,在Adapter的getView()方法中,根据数据模型的状态来设置CheckBox的选中状态。 2. **CheckBox监听**:我们需要为每个CheckBox设置...
3. 将ArrayAdapter设置为ListView的适配器,使用`setAdapter()`方法。 4. 为了响应ListView中的项点击,需要实现`onItemClickListener`。在`setOnItemClickListener()`中,你可以获取选中项的位置,并根据需要进行...