当前位置: 首页 > news >正文

秦皇岛网站建设公司2021百度模拟点击工具

秦皇岛网站建设公司,2021百度模拟点击工具,长沙装修公司哪家好,wordpress 边栏目录 Android ContextMenu 上下文菜单 ContextMenu 范例 参考文档 Android SubMenu 子菜单 范例 参考文档 Android PopupMenu 弹出菜单 范例 参考文档 Android ContextMenu 上下文菜单 在Android开发中,ContextMenu(上下文菜单)为…

目录

Android ContextMenu 上下文菜单

ContextMenu

范例

参考文档

Android SubMenu 子菜单

范例

参考文档

Android PopupMenu 弹出菜单

范例

参考文档


Android ContextMenu 上下文菜单

在Android开发中,ContextMenu(上下文菜单)为用户提供了一种简便的方式来执行对特定组件的操作。例如,长按列表中的一个项目时,可能会出现一个菜单,让用户选择“编辑”、“删除”等操作。

ContextMenu

Android提供了一种非常简单的方式来创建和处理上下文菜单(ContextMenu),主要通过在Activity中重写几个关键方法来实现。

这种方式不依赖于XML布局文件或是直接实例化某个类,而是通过与Activity生命周期紧密相关的几个回调方法来管理。

1. registerForContextMenu(View view)

  • 说明:这个方法用于为特定的View注册上下文菜单。当用户长按该View时,就会触发上下文菜单的显示。
  • 使用场景:通常在Activity的onCreate()方法中调用此方法,为想要显示上下文菜单的View注册。

2. onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)

  • 说明:当注册了上下文菜单的View被长按时,这个方法会被调用。在这里,你可以定义上下文菜单的内容,比如菜单项。
  • 使用场景:需要重写这个方法来填充上下文菜单,例如添加菜单项。

3. onContextItemSelected(MenuItem item)

  • 说明:用户选择上下文菜单中的某个项时,这个方法会被触发。在这里,你可以处理用户的点击事件。
  • 使用场景:需要重写这个方法来响应用户对上下文菜单项的选择。

调用顺序和流程

  1. 注册上下文菜单:在onCreate()方法中,通过调用registerForContextMenu(view)为特定的View注册上下文菜单。
  2. 创建上下文菜单:当用户长按已注册的View时,会自动调用onCreateContextMenu(menu, v, menuInfo)方法,在这里定义上下文菜单的内容。
  3. 响应菜单项点击:用户点击上下文菜单中的某个项时,onContextItemSelected(MenuItem item)方法会被调用,在这里处理点击事件。

范例

1、修改 activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"xmlns:tools="http://schemas.android.com/tools"android:orientation="vertical"android:gravity="center"tools:context=".MainActivity"><ListViewandroid:id="@+id/listview"android:layout_width="match_parent"android:layout_height="wrap_content" />
</LinearLayout>

2、修改 MainActivity.java

package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {ListView listView;String[] items = {"Java", "C#", "Python", "Ruby", "PHP", "C++", "Go", "Swift", "Kotlin", "JavaScript"};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);listView = findViewById(R.id.listview);ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, items);listView.setAdapter(adapter);// 注册 Context MenuregisterForContextMenu(listView);}// 创建 Context Menu@Overridepublic void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {super.onCreateContextMenu(menu, v, menuInfo);getMenuInflater().inflate(R.menu.context_menu, menu);}// 处理 Context Menu 项点击事件@Overridepublic boolean onContextItemSelected(MenuItem item) {AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();int itemId = item.getItemId();if (itemId == R.id.action_edit) {Toast.makeText(this, "编辑 " + items[info.position], Toast.LENGTH_SHORT).show();return true;} else if (itemId == R.id.action_delete) {Toast.makeText(this, "删去 " + items[info.position], Toast.LENGTH_SHORT).show();return true;} else {return super.onContextItemSelected(item);}}
}

3、在res/menu目录下创建一个名为context_menu.xml的文件(如果没有menu目录,则需要创建它)。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:id="@+id/action_edit"android:title="编辑"/><itemandroid:id="@+id/action_delete"android:title="删去"/>
</menu>

参考文档

  1. Android menus

Android SubMenu 子菜单

在Android开发中,SubMenu(子菜单)是一种常用的UI组件,允许在一个主菜单项下创建一个二级菜单。这对于分类和组织复杂的菜单项非常有用,可以帮助用户更好地导航应用的功能。(子菜单不是单独存在的,而是在 OptionMenu 或者 ContextMenu 中可以添加子菜单)

范例

1、创建菜单资源文件
首先,需要在res/menu目录下创建一个XML文件来定义菜单项,比如main_menu.xml。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"><!-- checkableBehavior 的可选值由三个:single设置为单选,all为多选,none为普通选项 --><group android:checkableBehavior="none"><item android:id="@+id/create"android:title="新建" /><item android:id="@+id/edit"android:title="编辑" /></group><item android:id="@+id/saveall"android:title="子菜单" ><menu xmlns:android="http://schemas.android.com/apk/res/android"><item android:id="@+id/save"android:title="保存" /><item android:id="@+id/save_as"android:title="另存为..." /><itemandroid:id="@+id/save_all"android:title="保存全部" /></menu></item><item android:id="@+id/help"android:title="帮助" />
</menu>

2、修改 activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"xmlns:tools="http://schemas.android.com/tools"android:orientation="vertical"android:gravity="center"tools:context=".MainActivity"><Buttonandroid:id="@+id/btn_pop"android:text="长按我弹出上下文菜单"android:layout_width="wrap_content"android:layout_height="wrap_content" />
</LinearLayout>

3、修改 MainActivity.java

package com.example.myapplication;import android.os.Bundle;
import android.view.ContextMenu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button btnPop = findViewById(R.id.btn_pop);registerForContextMenu(btnPop);}@Overridepublic void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {super.onCreateContextMenu(menu, v, menuInfo);getMenuInflater().inflate(R.menu.main_menu, menu);}@Overridepublic boolean onContextItemSelected(MenuItem item) {int itemId = item.getItemId();if (itemId == R.id.create) {// 处理新建操作return true;} else if (itemId == R.id.edit) {// 处理编辑操作return true;} else if (itemId == R.id.save) {// 处理保存操作return true;} else if (itemId == R.id.save_as) {// 处理另存为操作return true;} else if (itemId == R.id.save_all) {// 处理保存全部操作return true;} else if (itemId == R.id.help) {// 处理帮助操作return true;} else {return super.onContextItemSelected(item);}}}

参考文档

  1. Android menus

Android PopupMenu 弹出菜单

在Android开发中,PopupMenu是一个非常有用的组件,它可以在用户界面的任何位置显示一个弹出菜单。这个菜单可以通过编程方式动态创建,也可以从XML菜单资源文件加载。

PopupMenu在Android中是一个用于显示上下文菜单的非常方便的组件,它可以附着在指定的视图(View)上。PopupMenu有几种构造方法允许你根据需要选择不同的参数来创建弹出菜单。以下是如何使用这些构造方法以及如何设置和显示PopupMenu的具体步骤:

  • 基本构造方法:PopupMenu(Context context, View anchor): 这是最基本的构造函数,只需要上下文(通常是Activity)和锚点视图(即触发弹出菜单的视图)。
  • 指定重力的构造方法:PopupMenu(Context context, View anchor, int gravity): 这个构造函数除了上下文和锚点视图外,还允许你指定弹出菜单的重力(gravity),例如Gravity.END,控制菜单显示的位置相对于锚点视图。
  • 完全自定义样式的构造方法:PopupMenu(Context context, View anchor, int gravity, int popupStyleAttr, int popupStyleRes): 这是最灵活的构造函数,它除了上述参数外,还允许你通过popupStyleAttr和popupStyleRes指定弹出菜单的样式。

范例

步骤1: 创建菜单资源文件
首先,在res/menu目录下创建一个名为main_menu.xml的菜单资源文件。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:id="@+id/action_item1"android:title="选项 1"/><itemandroid:id="@+id/action_item2"android:title="选项 2"/><itemandroid:id="@+id/action_item3"android:title="选项 3"/>
</menu>

步骤2: 修改 activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"xmlns:tools="http://schemas.android.com/tools"android:orientation="vertical"android:gravity="center"tools:context=".MainActivity"><Buttonandroid:id="@+id/button_show_popup"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="显示弹出菜单"android:layout_centerInParent="true"/>
</LinearLayout>

步骤3: 修改 MainActivity.java

package com.example.myapplication;import android.os.Bundle;
import android.view.Gravity;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.PopupMenu;
import android.widget.Toast;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button buttonShowPopup = findViewById(R.id.button_show_popup);buttonShowPopup.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 创建PopupMenu实例PopupMenu popupMenu = new PopupMenu(MainActivity.this, v, Gravity.RIGHT);// 从XML资源文件中填充菜单项popupMenu.getMenuInflater().inflate(R.menu.main_menu, popupMenu.getMenu());// 设置菜单项点击事件popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {@Overridepublic boolean onMenuItemClick(MenuItem item) {Toast.makeText(MainActivity.this, "选中了: " + item.getTitle(), Toast.LENGTH_SHORT).show();return true;}});// 显示PopupMenupopupMenu.show();}});}
}

参考文档

  1. Android menus

 

http://www.hkea.cn/news/160528/

相关文章:

  • 乌兰县wap网站建设公司有效获客的六大渠道
  • 微信网站开发教程视频教程百度一下主页官网
  • 网站开发专业前景关键词挖掘排名
  • 网站开发属于什么职位类别seo查询站长工具
  • wordpress postmetaseoul national university
  • 商务网站的主要存在形式杭州百度快照优化公司
  • 个人备案网站做购物网站可以不班级优化大师免费下载电脑版
  • 贸易网站建设互联网广告代理加盟
  • 深圳网站建设网络公司河北关键词排名推广
  • 在工商网上怎么注册公司seo优化博客
  • 免费的小程序怎么赚钱历下区百度seo
  • 河北石家庄最新疫情最新消息优化防疫政策
  • 一站式做网站哪家强新闻小学生摘抄
  • 江西南昌网站建设公司哪家好谷歌google 官网下载
  • 公司网站用什么开发百度指数怎么用
  • 建站主机 wordpress济南网站万词优化
  • 哈尔滨app开发seo自学网官网
  • 网站答辩ppt怎么做全网关键词云在哪里看
  • 网站建设 视频seo关键词词库
  • 网站应用软件设计成都网站建设技术外包
  • 用哪个软件做网站网址查询域名解析
  • 网站安全优化域名停靠浏览器
  • 我做中医培训去哪个网站找学员谷歌排名算法
  • 如何将网站让百度收录网店培训班
  • wordpress旧版页面编辑界面百度seo推广计划类型包括
  • 网站建设茶店网网站换友链平台
  • 珠海建设工程信息网站网络营销百度百科
  • 帮别人做网站推广犯法吗关键词排名网站
  • 建设通网站是政府的么高端网站定制设计
  • 玉溪做网站的公司夸克搜索网页版