`

android中popuMenu的注意点

 
阅读更多
代码都是差不多,为了说明先贴出来了,需要注意的是红字部分。
PopupMenu menu = new PopupMenu(getApplicationContext(), v);
menu.getMenuInflater().inflate(R.menu.main, menu.getMenu());
menu.setOnMenuItemClickListener(new OnMenuItemClickListener() {

@Override
public boolean onMenuItemClick(MenuItem item) {
Toast.makeText(MainActivity.this, "点击了   "+item.getTitle(), Toast.LENGTH_SHORT).show();
return true;
}
});
menu.show();
需要注意的是,这里如果填了xxxActivity.this,显示出来的菜单背景是白色,而且会多出来一些菜单部分。如果填了getBaseContext(),显示出来的是正常点了,但是字体颜色确实黑色的,背景也是黑灰的,让字体看不清晰了,如果使用getApplicationContext()就正常了,效果是背景黑灰,字体亮白的。
分享到:
评论

相关推荐

    android demo,popumenu的优化,编写了一个类,实现动态的弹出菜单。

    在`test_popumenu_optimize`这个压缩包中,可能包含有优化后的自定义PopUpMenu类源代码、相关的布局文件以及示例用法。通过阅读和分析这些文件,我们可以深入理解这个优化过程,并可能将其应用到自己的项目中,提升...

    android demo,popumenu,弹出式菜单的实现。

    本示例"android demo,popumenu"将深入探讨如何在Android项目中实现弹出式菜单。 首先,弹出式菜单的基本概念是它不是一个独立的组件,而是依赖于ContextMenu或者自定义ViewGroup。在Android SDK中,`PopupMenu`类...

    PopuMenu弹出菜单

    - **设置菜单**: 使用`inflate()`方法将XML定义的菜单项填充到PopuMenu中。XML文件通常位于res/menu目录下。 ```java popup.getMenuInflater().inflate(R.menu.popup_menu, popup.getMenu()); ``` - **添加监听器*...

    NFC点对点传输AndroidBeamDemo

    Android Beam是Android系统提供的一种NFC点对点(P2P)数据传输功能,用户只需简单地将两个启用NFC功能的Android设备轻轻碰触,即可快速分享文件、链接、联系人等信息。"NFC点对点传输AndroidBeamDemo"是一个专门用于...

    Android串口通信(Android Studio)

    在Android开发中,串口通信(Serial Port Communication)是一种重要的技术,它允许设备之间通过串行接口进行数据交换。在Android Studio环境下实现串口通信,开发者可以构建与硬件设备交互的应用,例如读取传感器...

    android 雷达脉冲 以中心点扩散的效果

    这种效果通常用于吸引用户注意力或者在寻找、探索类应用中提供交互反馈。 实现这种效果的核心技术是Android的动画系统,尤其是使用`Animation`类和它的子类。在Android中,动画分为两种类型:补间动画(Tween ...

    解决Android4.0中菜单设置图标无效问题

    请注意,由于我们访问的是Android的内部类和私有方法,这种方法可能在不同的Android版本或设备上表现不一致,甚至可能在未来的Android更新中失效。因此,这种解决方案应当作为最后的手段,并且需要对可能的风险有所...

    spatialite for android jar包和so库文件

    Spatialite是SQLite数据库的一个扩展,它为SQLite添加了对空间数据的...以上就是关于"spatialite for android jar包和so库文件"的相关知识点,这个资源对于需要在Android应用中处理地理信息的开发者来说非常有价值。

    Android中文API查询和JAVA开发API

    开发者需要根据需求选择合适的类和方法来实现功能,同时,还要注意API的版本兼容性,因为不同的Android版本可能支持不同的API级别。例如,对于需要支持低版本Android设备的应用,开发者需要确保使用的API在目标设备...

    Android开发入门60个小案例+源代码

    总之,"Android开发入门60个小案例+源代码"是一个宝贵的资源,它涵盖了Android开发的众多基础知识点,通过实践这些小案例,初学者可以快速上手,逐步掌握Android应用开发的核心技术。同时,源代码提供了直接参考和...

    JS调用Android方法,向Android方法传递json数据

    在现代的移动应用开发中,JavaScript与原生平台之间的交互变得越来越常见,特别是在使用Android的WebView组件时。本文将深入探讨如何使用JavaScript调用Android的方法,并传递JSON数据,以实现两者之间的高效通信。 ...

    Android中SurfaceView截屏

    在Android开发中,`SurfaceView`是一个非常重要的视图组件,尤其在处理视频播放、游戏渲染等高性能图形操作时,它的优势在于拥有独立于主线程的渲染机制,能避免阻塞UI更新。然而,由于其特殊的性质,直接通过常规...

    Android API中文文档

    Android API 中文文档 Android API 中文文档 Android API 中文文档 Android API 中文文档 Android API 中文文档 Android API 中文文档 Android API 中文文档 Android Android API 中文文档 中文文档Android API ...

    Android中Preference的使用以及监听事件分析

    在Android开发中,Preference是构建用户界面的一种重要方式,它主要用于创建设置界面,提供开关、选择列表、输入框等常用控件。Preference类是Android框架的一部分,它简化了UI元素的创建和管理,使得开发者可以方便...

    Android扫雷游戏(基于Android Studio)

    扫雷游戏,作为一款经典的小游戏,它的实现过程涵盖了Android应用开发的多个核心知识点。 1. **Android Studio入门**:首先,你需要了解Android Studio的基本操作,包括创建新项目、项目结构、布局设计、代码编写...

    Android中Path类的quadTo函数

    在Android的图形系统中,`Path`类是一个非常重要的组件,它用于定义和操作复杂的几何路径,这些路径可以用于绘制或者进行图形变换。本篇文章将深入探讨`Path`类中的`quadTo()`函数,以及与`lineTo()`函数的区别。 ...

    Android SDK 中文帮助文档

    1. **API 文档**:这是SDK中最核心的部分,详细介绍了Android API的各个类、方法和接口。开发者可以通过查阅这些文档,了解如何使用Android提供的各种功能,如视图(View)、活动(Activity)、广播接收器(Broadcast ...

    Android 进阶 教你打造 Android 中的 IOC 框架(上)

    在Android开发中,IOC(Inversion of Control,控制反转)框架是提高代码可维护性和可扩展性的重要工具。本文将探讨如何打造一个Android中的IOC框架,以实现组件间的解耦和更加灵活的代码结构。我们将主要关注两个...

    android安卓通过url获取网络图片并显示在imageview中

    总结,通过URL获取网络图片并在Android应用中显示,主要涉及以下几个知识点: 1. 添加第三方库Glide及其依赖。 2. 配置AndroidManifest.xml以允许网络访问。 3. 使用Glide的API加载图片到ImageView。 4. 可选地,...

    android开发艺术探索书中源码

    通过分析《Android开发艺术探索》中的源码,开发者不仅可以深入理解上述知识点,还能看到作者的编码风格和解决问题的思路,这对提升个人编程能力非常有帮助。实践中遇到问题时,参照源码可以找到解决办法,从而加速...

Global site tag (gtag.js) - Google Analytics