2013-07-17 15 views
8

W public void menu onCreateContextMenu (ContextMenu, View v ContextMenuInfo menuInfo} zdarzenia,Jak uzyskać widok w zdarzeniu OnContextItemSelected?

myślę, że mogę wiedzieć, które kontrolują rozpoczęcie imprezy onCreateContextMenu przez arg View v przy użyciu następujących, prawda?
ImageView ImageView = (ImageView) v

ale w public boolean onContextItemSelected (pozycja mENUITEM), nie mogę znaleźć tego samego argumentu, jak mogę to zrobić Dzięki

+0

możliwe duplikat [Androida: Jak znaleźć pozycję klikniętą z menu kontekstowego] (http://stackoverflow.com/questions/2453620/android-how-to-find-the-position-clicked-from-the-context-menu) – hasanghaforian

Odpowiedz

16

można użyć ContextMenu.ContextMenuInfo takiego:?!

@Override 
public boolean onContextItemSelected(MenuItem item) { 
    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); 
    int index = info.position; 
} 

Można również uzyskać dokładną View, dla których są wyświetlane jest menu:

@Override 
public boolean onContextItemSelected(MenuItem item) { 
    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); 
    int index = info.position; 
    View view = info.targetView; 
} 

Spójrz na te pytania:

Android: How to find the position clicked from the context menu

Identifying the view selected in a ContextMenu (Android)

Powiązane problemy