Android涓瑿ontextMenu鎬庝箞浣跨敤
Android涓瑿ontextMenu鏄竴绉嶇敤鎴风晫闈㈢粍浠讹紝鐢ㄤ簬鍦ㄩ暱鎸夎鍥炬椂鏄剧ず涓婁笅鏂囨搷浣滆彍鍗曘€備笅闈㈡槸浣跨敤ContextMenu鐨勫熀鏈楠わ細
- 鍦ㄤ綘鐨凙ctivity鎴朏ragment涓紝閲嶅啓onCreateContextMenu()鏂规硶锛岀敤浜庡垱寤篊ontextMenu鐨勮彍鍗曢」銆備緥濡傦細
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
getMenuInflater().inflate(R.menu.context_menu, menu);
}
- 鍒涘缓涓€涓彍鍗曡祫婧愭枃浠讹紙XML锛夛紝鐢ㄤ簬瀹氫箟ContextMenu鐨勮彍鍗曢」銆備緥濡傦紝鍒涘缓涓€涓悕涓篶ontext_menu.xml鐨勬枃浠讹紝濡備笅鎵€绀猴細
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_item1"
android:title="鑿滃崟椤?" />
<item
android:id="@+id/menu_item2"
android:title="鑿滃崟椤?" />
</menu>
- 鍦ㄤ綘鐨勮鍥句腑娉ㄥ唽ContextMenu銆備緥濡傦紝濡傛灉浣犳兂鍦ㄤ竴涓猅extView涓婃樉绀篊ontextMenu锛屼綘鍙互鍦╫nCreate()鏂规硶涓坊鍔犱互涓嬩唬鐮侊細
TextView textView = findViewById(R.id.text_view);
registerForContextMenu(textView);
- 鍦ㄤ綘鐨凙ctivity鎴朏ragment涓紝閲嶅啓onContextItemSelected()鏂规硶锛岀敤浜庡鐞嗙敤鎴烽€夋嫨鐨凜ontextMenu鑿滃崟椤广€備緥濡傦細
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_item1:
// 澶勭悊鑿滃崟椤?鐨勯€昏緫
return true;
case R.id.menu_item2:
// 澶勭悊鑿滃崟椤?鐨勯€昏緫
return true;
default:
return super.onContextItemSelected(item);
}
}
杩欐牱锛屽綋鐢ㄦ埛闀挎寜浣犳敞鍐屼簡ContextMenu鐨勮鍥炬椂锛孋ontextMenu鑿滃崟灏嗕細鏄剧ず鍑烘潵锛屽苟涓斿綋鐢ㄦ埛閫夋嫨鑿滃崟椤规椂锛岀浉搴旂殑閫昏緫灏嗕細琚墽琛屻€?/p>