Используя onTouch и onCreateContextMenu одновременно

Я ищу, чтобы зафиксировать координаты события касания пользователей (для этого я onTouch метод onTouch ), но я также хочу отображать контекстное меню, когда пользователь касается экрана.

Когда onCreateContextMenu методы onTouch и onCreateContextMenu , каждое событие касания отправляется методу onTouch . Метод onCreateContextMenu никогда не вызывается. Думаю, это ожидалось. Затем я попытался вручную отобразить контекстное меню, вызвав openContextMenu(v) в методе onTouch , это работает, но меню не исчезает с экрана после onContextItemSelected(MenuItem item) . Так как я могу сделать эту работу?

 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.record_match); myCourtView = new MyImageView(getApplicationContext()); ll = (LinearLayout)findViewById(R.id.linearLayout); ll.addView(myCourtView, new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); registerForContextMenu(myCourtView); myCourtView.requestFocus(); myCourtView.setOnTouchListener(this); }// End OnCreate // Implement the OnClickListener callback public boolean onTouch(View v, MotionEvent event) { //do something when user interacts with the court view myCourtView.processEvent(event); openContextMenu(v); myCourtView.invalidate(); return true; }//End OnClickListener @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.shot_entry_menu, menu); }//End onCreateContextMenu @Override public boolean onContextItemSelected(MenuItem item) { AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); switch (item.getItemId()) { case R.id.player_1: //do something return true; case R.id.player_2: //do something else return true; } return true; }//End onContextItemSelected 

Solutions Collecting From Web of "Используя onTouch и onCreateContextMenu одновременно"