contextmenu
很多同学在进行编程学习时缺乏系统学习的资料。本页面基于contextmenu内容,从基础理论到综合实战,通过实用的知识类文章,标准的编程教程,丰富的视频课程,为您在contextmenu相关知识领域提供全面立体的资料补充。同时还包含 c string、c 编程、c 程序设计 的知识内容,欢迎查阅!
contextmenu相关知识
-
每个程序员都会的35个jQuery小技巧!1. 禁止右键点击 $(document).ready(function(){ $(document).bind("contextmenu",function(e){ return false; }); }); 2.隐藏搜索文本框文字 Hide when clicked in the search field, the value.(example can be found below in the comment fields) $(document).ready(function() { $("input
-
jQuery右键菜单contextMenu实例ui代码:View Code <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns=&
-
HTML5中Video,禁止右键下载HTML5中Video,禁止右键下载<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>LOVE</title> <script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">;</script><script>$(document).ready(function(){$('#myVideo').bind('contextmenu',function() { return false; });});</script></head><body><video id="myVideo" width="3
-
HTML5中Video,禁止右键下载HTML5中Video,禁止右键下载<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>LOVE</title> <script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">;</script><script>$(document).ready(function(){$('#myVideo').bind('contextmenu',function() { return false; });});</script></head><body><video id="myVideo" width="3
contextmenu相关课程
contextmenu相关教程
- 2.2 contextmenu contextmenu 属性用于制定 div 元素的右键单击菜单,需要配合 menu 标签使用,例如:937这个功能类似于桌面应用的右键菜单功能,但是目前只有 Firefox 浏览器支持 contextmenu 属性,不支持的浏览器可以使用 div + css 模拟实现。
- 3.2 Context Menu 示例 3.2.1 加载 ContextMenu加载一个 ContextMenu 通常需要以下步骤:调用registerForContextMenu()传入一个 View,来为该 View 注册一个Context Menu,从此该 View 就和一个 OptionMenu 绑定;在 Activity 中复写onCreateContextMenu()方法,当用户长按你注册过的 View,Android 系统就会回调此方法,我们可以在这里进行 menu 资源的加载。其实逻辑和 Option Menu 类似,但是因为需要绑定 View 所以多了一个注册操作,加载代码如下:@Overridepublic void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu_file, menu);}onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo)方法需要传入 3 个参数,分别是:ContextMenu menu: 菜单对象,类似 OptionMenu 里面的 Menu 对象View v: 与 Context Menu 绑定的 View 对象ContextMenuInfo menuInfo: 包含与被选项的一些附加信息注意: 如果当前 Activity 有多个 View 都有 Context Menu,那么需要通过这几个参数来判断当前触发的是哪个 View 相关的 Context Menu3.2.2 处理 Context Menu 选项的点击事件当用户点击上下文菜单项的时候,系统会回调onContextItemSelected()方法,所以我们可以在方法里实现相应的处理逻辑。如下:@Override public boolean onContextItemSelected(MenuItem item) { // 处理 Context Menu 选项的点击事件 } }
- 4.3 编写 Activity 最后就可以编写 Activity 了,其中要做的就是为 Menu 做资源加载,并接收点击回调即可:package com.emercy.myapplication;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.support.v7.widget.PopupMenu;import android.view.ContextMenu;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import android.view.View;import android.widget.Toast;public class MainActivity extends AppCompatActivityimplements PopupMenu.OnMenuItemClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 为 TextView 注册 Context Menu registerForContextMenu(findViewById(R.id.tv_context)); } // 加载 Option Menu @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater menuInflater = getMenuInflater(); menuInflater.inflate(R.menu.menu, menu); return true; } // 接收 Option Menu 的点击 @Override public boolean onOptionsItemSelected(MenuItem item) { return onItemClick(item); } // 加载 Context Menu @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); MenuInflater menuInflater = getMenuInflater(); menuInflater.inflate(R.menu.menu, menu); } // 接收 Context Menu 的点击 @Override public boolean onContextItemSelected(MenuItem item) { return onItemClick(item); } // 加载 Popup Menu public void pop(View v){ PopupMenu popup = new PopupMenu(this, v); MenuInflater menuInflater = getMenuInflater(); menuInflater.inflate(R.menu.menu, popup.getMenu()); popup.show(); } // 接收 Popup Menu 的点击 @Override public boolean onMenuItemClick(MenuItem item) { return onItemClick(item); } private boolean onItemClick(MenuItem item) { switch (item.getItemId()) { case R.id.main_menu: Toast.makeText(this, "选择了客户端开发", Toast.LENGTH_SHORT).show(); break; case R.id.submenu1: Toast.makeText(this, "选择学习 Android", Toast.LENGTH_SHORT).show(); break; case R.id.submenu2: Toast.makeText(this, "选择学习 iOS", Toast.LENGTH_SHORT).show(); break; } return true; }}针对每个菜单都分别有“加载资源”和“处理点击”两种操作,另外由于每个菜单的处理逻辑都一样,为了增强代码复用性我单独拎出了一个函数onItemClick()专门用于统一处理点击事件。最终样式如下(在不同的设备上可能会有所不同):Option Menu 的子菜单:Context Menu 的子菜单:Popup Menu 的主菜单:
- 《Java 泛型、反射、编译优化》章节小结 刚入行的Java开发者,总会遇到这样那样的坑。资深
- 内容提供者 - Content Provider 零基础 Android 入门,精华知识点提取
- Maven 编写插件 学习当下火热的 Java 构建工具 Maven
contextmenu相关搜索
-
c 正则表达式
c string
c 编程
c 程序设计
c 程序设计教程
c 多线程编程
c 教程
c 数组
c 委托
c 下载
c 线程
c 语言
caidan
cakephp
call
calloc
calu
camera
caption
case语句