2016-07-19 18 views

Antwort

0

diesen Code setzen in Ihrem viewHolder Klasse

btnExpand.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        PopupMenu popup = new PopupMenu(btnExpand.getContext(), itemView); 

        popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { 
         @Override 
         public boolean onMenuItemClick(MenuItem item) { 
          switch (item.getItemId()) { 
           case R.id.action_Delete: 
            moveFile(recordName.getText().toString(), getAdapterPosition()); 
            return true; 

           default: 
            return false; 
          } 
         } 
        }); 
        popup.inflate(R.menu.second_contect); 
        popup.setGravity(Gravity.RIGHT); 
        try { 
         Field mFieldPopup=popup.getClass().getDeclaredField("mPopup"); 
         mFieldPopup.setAccessible(true); 
         MenuPopupHelper mPopup = (MenuPopupHelper) mFieldPopup.get(popup); 
         mPopup.setForceShowIcon(true); 
        } catch (Exception e) { 

        } 
        popup.show(); 
       } 
      }); 

Sie meine popupmenu sehen

enter image description here

+0

ich sollte PopupWindow verwenden, weil das Menü angepasst wird Layout. –

+0

ok .. kannst du deine Antwort updaten, wenn du auf PopupWindow erfolgreich bist .. bcz ich wollte auch PopUpWindow statt PopupMenu einstellen .. –

1

showPopUpMenu(View); pass View wo möchten Sie dieses Popup anhängen?

void showPopUpMenu(View anchor) { 
     PopupMenu popup = new PopupMenu(MainActivity.this, anchor); 
     //Inflating the Popup using xml file 
     popup.getMenuInflater().inflate(R.menu.popup_menu, popup.getMenu()); 

     //registering popup with OnMenuItemClickListener 
     popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { 
      public boolean onMenuItemClick(MenuItem item) { 
       Toast.makeText(MainActivity.this, "You Clicked : " + item.getTitle(), Toast.LENGTH_SHORT).show(); 
       return true; 
      } 
     }); 

     popup.show();//showing popup menu 
    } 

Full Demo

Verwandte Themen