繁体   English   中英

主屏幕小部件中的Android弹出菜单

[英]Android popup menu from home screen widget

我想从主屏幕小部件显示一个弹出菜单,如下面的图片所示,但是PopupMenu构造函数中有一个View anchor参数。

但是我无权访问AppWidgetProvider类中的视图,并且只有RemoteViews可用。

那么,如何在小部件中实现弹出菜单?

任何帮助,将不胜感激。 谢谢。

小部件的弹出菜单

您不能将android.support.v7.widget.PopupMenu直接用于RemoteViews 但是您可以复制该行为:

  1. 将锚点视图添加到RemoteViews布局(此视图可以是任何受支持的视图: https : //developer.android.com/guide/topics/appwidgets/index.html#CreatingLayout
  2. 使用定义的intent操作创建PendingIntent ,并使用setOnClickPendingIntent设置锚视图
  3. 通过intent操作在onReceiveAppWidgetProvider捕获该Intent
  4. 调用intent.getSourceBounds()以获取单击的锚点视图的屏幕位置
  5. 启动一个完全透明的Activity ,并将屏幕位置传输到该Activity
  6. 在透明Activity的传输屏幕位置创建并打开PopupMenu
  7. 如果用户未单击PopupMenu某个项目,则finish()透明的Activity

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM