1. Toast 使用
Toast toast = Toast.makeText(Context context, CharSequence text, @Duration int duration); toast.show();
说明:
1. Toast 创建完之后,需调用show()方法。
2. Toast makeText 方法最后一个参数需传入常量 Toast.LENGTH_SHORT 或者 Toast.LENGTH_SHORT
2. AlertDialog 对话框使用
final AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage("您确定退出游戏?"); builder.setTitle("温馨提示"); builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { System.exit(0); } }); builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show();
3. Home 键事件监听
这里的 Home 键事件监听,指的是知道 Home 键被按下,而不能截获或者屏蔽 Home 键。网上有一堆解决如何屏蔽 Home 键的解决方案,但是我试过了,在我的红米、华为荣耀5x 都没有用。
先定义 BroadcastReceiver
/** * Home 键事件的监听 */ private BroadcastReceiver homeKeyEventReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (!action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) { return; } String reason = intent.getStringExtra("reason"); if (!TextUtils.equals(reason, "homekey")) { return; } if (isStopToHome) { return; } LogUtil.v(TAG, "homeKeyEvent ..."); homeKeyEvent = true; // 按下 home 键 Toast toast = Toast.makeText(CikeActivity.this, "您按了“主菜单键” 暂停了游戏!", Toast.LENGTH_LONG); toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); toast.show(); } };
然后在 Activity 的 onCreate() 方法中注册 Receiver
// 注册消息接收 registerReceiver(homeKeyEventReceiver, new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));