He registrado varios botones para el menú contextualget view id from oncontextitemselected
¿cómo sé en qué botón se hizo clic para que aparezca el menú?
a continuación es el pseudocódigo que voy a utilizar. Necesito hacer algo relacionado con el botón al que se hizo clic (tengo que declarar algunos botones más), ¿cómo sé que el menú contextual se activa desde qué botón hacer clic?
EDIT: Creo que no me di cuenta, quería saber en qué botón se hizo clic para que aparezca el menú. No se hace clic en el elemento del menú. De todos modos, tengo una solución que añadiré muy pronto.
gracias
private static final int SEND_AS_TEXT = Menu.FIRST;
private static final int SEND_AS_IMAGE = Menu.FIRST + 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
sendAllBtn = (Button)findViewById(R.id.sendAllBtn);
sendAllBtn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
registerForContextMenu(v);
openContextMenu(v);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
switch(item.getItemId()){
case SEND_AS_TEXT:
//do sth related to the button clicked
break;
}
return super.onContextItemSelected(item);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
// TODO Auto-generated method stub
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(Menu.NONE, SEND_AS_TEXT, SEND_AS_TEXT, "Send As Text");
menu.add(Menu.NONE, SEND_AS_IMAGE, SEND_AS_IMAGE, "Send As Image");
}
pegar su código que se ha utilizado –
lo siento, estaba navegando este sitio móvil, mientras que ahora detalles añadido:. D –