Android学习笔记上下文菜单
2024-09-07 16:44:46
布局文件main_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<!--标题栏-->
<ImageView
android:id="@+id/img_title"
android:layout_width="match_parent"
android:layout_height="@dimen/title_height"
android:scaleType="fitXY"
android:src="@drawable/wei_top" />
<!--头像-->
<ImageView
android:id="@+id/img_head"
android:layout_width="@dimen/head"
android:layout_height="@dimen/head"
android:layout_below="@+id/img_title"
android:src="@mipmap/tx3"/>
<!--用户名-->
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/img_head"
android:text="CSDN梦梦"
android:textSize="@dimen/userNameSize"
android:layout_marginLeft="@dimen/margin_headLeft"
android:layout_below="@+id/img_title"
android:textColor="@color/colorUsername"/>
<!--内容-->
<TextView
android:id="@+id/content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/content"
android:layout_below="@+id/username"
android:layout_toRightOf="@+id/img_head"
android:textColor="@color/colorContent"
android:textSize="@dimen/content_textSize"
android:layout_marginLeft="@dimen/margin_headLeft"/>
<TextView
android:id="@+id/time_tip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:text="12小时前"
android:layout_toRightOf="@+id/img_head"
android:layout_marginLeft="@dimen/margin_headLeft"
android:layout_marginTop="10dp"
android:textColor="@android:color/darker_gray"
android:layout_below="@id/content"/>
</RelativeLayout>
菜单文件menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_copy" android:title="复制"></item>
<item android:id="@+id/menu_collect" android:title="收藏"></item>
<item android:id="@+id/menu_translate" android:title="翻译"></item>
<item android:id="@+id/menu_report" android:title="举报"></item>
</menu>
MainActivity.java
package com.lzp.circleoffriend;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
TextView content;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//为文本框注册上下文菜单
TextView content = findViewById(R.id.content);
registerForContextMenu(content);
}
//重写onCreateContextMunu()方法,添加一个上下文菜单
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
MenuInflater inflater = new MenuInflater(this);
inflater.inflate(R.menu.menu,menu);
}
//重写onContextItemSelected,对每个菜单的选中事件做处理
@Override
public boolean onContextItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()){
case R.id.menu_copy:
Toast.makeText(MainActivity.this,
"已复制",Toast.LENGTH_SHORT).show();
break;
case R.id.menu_collect:
Toast.makeText(MainActivity.this,
"已收藏",Toast.LENGTH_SHORT).show();
break;
}
return super.onContextItemSelected(item);
}
}
效果:
最新文章
- &;,引用复制@,忽略错误提示
- JZs3c2440裸板程序GPIO操作总结
- <;<;薪资至少10K的一道题,你能拿下吗>;>;练习
- PE文件数字签名信息读取存储及格式具体解释图之上(历史代码,贴出学习)
- 应聘.net开发工程师常见的面试题(二)(转载)
- 寻找第K小元素
- codeforces 631C. Report
- SAX解析原理示意
- Assets.xcassets误删后的恢复
- 关于mysql中的count()函数
- Postman SMTP 存在跨站脚本(XSS)漏洞,请换用Post SMTP Mailer/Email Log
- Java基础IO流(五)RandomAccessFile
- 升级 php composer 版本
- Python 通过gevent实现协程
- JavaScript——创建对象
- 系统安装-007 CentOS7yum源添加、删除及其yum优化(转)
- [arc082F]Sandglass
- OpenID 和 OAuth 的区别及第三方登录的安全隐患分析
- 3.Strings 字符串如何工作?----对缓冲区的理解。
- 解决dragsort鼠标拖动与onclick事件共存
热门文章
- 关于 conda中的 lxml 无法导入 etree 问题
- linux高级管理第十四章--kvm虚拟化
- SpringBoot 安全管理(一)
- 关于vue+element对ie9的兼容el-upload不支持在IE9上传
- 跨域解决方案 - 跨域资源共享cors
- Redis 入门到分布式 (七)Redis复制的原理与优化
- 一招解决GitHub致命的下载速度(GitHub下载速度慢怎么办)
- Java实现 蓝桥杯VIP 算法训练 装箱问题
- SQL server怎么查找某个时间段(多个时间段)的第一个值 或 最后一个值(这里举例查找每小时的第一个值)(Convert详细方法)
- Java实现第十届蓝桥杯矩形切割