【问题标题】:Set menu for every single item in Recycleview为 Recyclerview 中的每个项目设置菜单
【发布时间】:2016-07-10 06:52:30
【问题描述】:

如何为recycleview Item制作这种菜单。这主要是一个下拉菜单,用于对该特定项目执行操作。

【问题讨论】:

  • 为此使用溢出弹出菜单
  • 你可以在你正在使用的布局中添加一个imageview

标签: android android-recyclerview


【解决方案1】:

在您的RecyclerView 项目中使用三点菜单视图作为ImageView。 onClick 该 ImageView 打开弹出菜单。

示例代码在这里。

view.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View v) {
    final PopupMenu popupMenu = new PopupMenu(context, v);
    final Menu menu = popupMenu.getMenu();

    popupMenu.getMenuInflater().inflate(R.menu.menu_item_action, menu);
    popupMenu.setOnMenuItemClickListener(onMenuItemClickListener);

    switch (Global.listMode) {
      case Global.LIST_STYLE_NORMAL: {
        menu.findItem(R.id.action_delete).setVisible(false);
        break;
      }
      case Global.LIST_STYLE_FAVORITE: {
        menu.findItem(R.id.action_add_to_favorite).setVisible(false);
        break;
      }
      case Global.LIST_STYLE_WATCH_LIST: {
        menu.findItem(R.id.action_add_to_watch_list).setVisible(false);
        break;
      }
      case Global.LIST_STYLE_DOWNLOAD: {
        menu.findItem(R.id.action_download).setVisible(false);
        break;
      }
    }

    itemPosition = (int) view.getTag(R.id.tag_item_position);
    popupMenu.show();
  }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-26
    • 1970-01-01
    • 1970-01-01
    • 2019-06-30
    相关资源
    最近更新 更多