在模仿微信过程中有一个加号菜单启动着实让我有点费心,因为我去掉了自带的标题栏,想通过OnCreateOptionMenu这段代码来实现传统的Menu显示显然是不可能了。所以在自定义创建的状态栏里添加了一个加号的ImageView,想通过监听ImageView的Onclick来触发Popumenu的创建。基本效果与微信相似,细节方面还需多多考究。

 

看具体代码如下:

1、监听之后创建Popumenu的java代码:

 

menuView.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                PopupMenu popupMenu=new PopupMenu(MainActivity.this,v);                popupMenu.getMenuInflater().inflate(R.menu.menu,popupMenu.getMenu());                /*暴力破解为menu添加icon问题。失败了。*/                /*if (popupMenu!=null){                    try {                        Method method=popupMenu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);                        method.setAccessible(true);                        method.invoke(popupMenu,true);                    }catch (Exception e){                        e.printStackTrace();                    }                }*/                popupMenu.show();            }        });

2、Popumenu的xml代码:

 

 

<?xml version="1.0" encoding="utf-8"?>                                        


但是这并没有完全解决我的问题,在menu中添加icon图片资源却无法实现。网上有相关代码和资料,说是Android将添加图片资源的变量设为private类型,并且没有给开发者提供外部接口访问。我也做了相应试验,但不尽如意。还望高人成功之后能指点一二。

 

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. 不吹不黑!GitHub 上帮助人们学习编码的 12 个资源,错过血亏...
  3. 一款霸榜 GitHub 的开源 Linux 资源监视器!
  4. WindowManager与窗口管理机制
  5. Android中如何通过程序打开或关闭GPS
  6. Android(OPhone) 学习笔记 - 记事本实例
  7. Android(安卓)带你玩转实现游戏2048 其实2048只是个普通的控件
  8. [Android]解决Window系统adb shell后中文显示乱码
  9. 【Android(安卓)XML】Android(安卓)XML 转 Java Code 系列之 介

随机推荐

  1. android中常见的错误及解决办法
  2. android.os.NetworkOnMainThreadExceptio
  3. Android复习(八)
  4. Android上的log,日志相关
  5. android 软键盘隐藏 activity初始化时edi
  6. Android(安卓)远程链接 daemon not runni
  7. android中的内存泄露
  8. android studio升级时提示 Connection fa
  9. webrtc 针对 android 平台的编译和运行
  10. android开发BUG集