1.为某个组件注册上下文菜单
registerForContextMenu();
2.创建上下文菜单
onCreateContextMenu
3. onContextItemSelected
package com.example.contextmenu;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends Activity {
EditText edittext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edittext=(EditText) findViewById(R.id.editText1);
registerForContextMenu(edittext);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
// TODO Auto-generated method stub
//MenuInflater inflater=new MenuInflater(this);
//inflater.inflate(R.menu.menu1, menu);
menu.add(Menu.NONE, 1, 1, "AAA");
menu.add(Menu.NONE, 2, 2, "BBB");
super.onCreateContextMenu(menu, v, menuInfo);
}
@Override
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch(item.getItemId()){
case R.id.item1:
Log.d("TEST", "TEST1");break;
case R.id.item2:
Log.d("TEST", "TEST2");break;
}
return super.onContextItemSelected(item);
}
}
长按输入框后的效果