您的位置:首页 > 编程语言 > C语言/C++

《Effective C++第三版》读书笔记——定制new和delete

2013-03-06 21:07 417 查看
在一个界面弹出AlertDialog后屏蔽home键

AlertDialog dialog = builder.create();
dialog.setOnKeyListener(new DialogInterface.OnKeyListener() {

@Override
public boolean onKey(DialogInterface dialog, int keyCode,
KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_HOME)
return true;
return false;
}
});
dialog.show();
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);

  

public class BaseProgressDialog extends ProgressDialog {

public BaseProgressDialog(Context context) {
super(context);
setOnShowListener(new DialogInterface.OnShowListener() {

@Override
public void onShow(DialogInterface dialog) {
// TODO Auto-generated method stub
getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
}
});
}

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
switch (event.getKeyCode()) {
case KeyEvent.KEYCODE_HOME:
return true;
}
return super.dispatchKeyEvent(event);
}

public static BaseProgressDialog show(Context context, CharSequence title,
CharSequence message) {
BaseProgressDialog dialog = new BaseProgressDialog(context);
dialog.setTitle(title);
dialog.setMessage(message);
dialog.setIndeterminate(false);
dialog.setCancelable(false);
dialog.setOnCancelListener(null);
dialog.show();
return dialog;
}
}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: