引用自:http://blog.csdn.net/zsh157621866651/article/details/51539301
範例一運行效果圖:
在OneActivity.java中添加如下監聽器:
- //在此方法中創建dialog
- protected void createdialog(){
- //初始化AlertDialog構建器對象
- AlertDialog.Builder b=new Builder(OneActivity.this);
- //設置dialog信息
- b.setMessage("確定退出嗎?");
- //設置dialog標題
- b.setTitle("提示");
- b.setIcon(android.R.drawable.ic_dialog_alert);//添加警告圖片
- b.setPositiveButton("確認", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- //如果用戶單擊確認退出,則對話框消失,程序關閉
- dialog.dismiss();
- // OneActivity.this.finish();
- android.os.Process.killProcess(android.os.Process.myPid());
- }
- });
- b.setNegativeButton("取消", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- //如果用戶單機取消退出,則對話框消失
- dialog.dismiss();
- }
- });
- //創建對話框並且顯示
- b.create().show();
- }
- //在Activity中的鍵盤監聽回調時間
- public boolean onKeyDown(int keyCode,KeyEvent event){
- if(keyCode==KeyEvent.KEYCODE_BACK || (keyCode == KeyEvent.KEYCODE_HOME)
- && event.getRepeatCount()==0){
- createdialog();
- }
- return false;
- }
範例二運行效果圖:
- //創建dialog方法
- protected void createDialog(){
- //初始化AlertDialog構造器對象
- AlertDialog.Builder builder=new Builder(MainActivity.this);
- //設置dialog的信息
- builder.setMessage("如果您有什麼好的建議,希望及時聯繫!");
- //內部定義TextView
- TextView tv=new TextView(MainActivity.this);
- tv.setText("關於");
- tv.setTextSize(35);
- //創建對話框並且顯示
- AlertDialog dialog=builder.create();
- dialog.setCustomTitle(tv);
- dialog.show();
- }
- //在Activity中的鍵盤監聽回調事件
- public boolean onKeyDown(int keyCode,KeyEvent event){
- //判斷當用戶按下menu鍵的時候觸發的事件
- if(keyCode==KeyEvent.KEYCODE_MENU && event.getRepeatCount()==0){
- createDialog();
- }
- return false;
- }
範例三運行效果圖:
- private TextView Tv;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_evaluate);
- Tv=(TextView) findViewById(R.id.Tv);
- }
- //創建dialog
- protected void createDialog(){
- //構造dialog
- Dialog dialog=new Builder(EvaluateActivity.this)
- //設置對話框的標題和圖標
- .setIcon(R.drawable.white).setTitle("評價對話框")
- //對話框中的信息
- .setMessage("謝謝您對我的服務進行評價:")
- //設置對話框的按鈕
- .setPositiveButton("很好", new OnClickListener() {
- @Override
- public void onClick(DialogInterface arg0, int arg1) {
- Tv.setText("很好");
- }
- }).setNegativeButton("一般", new OnClickListener() {
- @Override
- public void onClick(DialogInterface arg0, int arg1) {
- Tv.setText("一般");
- }
- }).setNeutralButton("有待提高", new OnClickListener() {
- @Override
- public void onClick(DialogInterface arg0, int arg1) {
- Tv.setText("有待提高");
- }
- }).create();
- //顯示對話框
- dialog.show();
- }
- //在Activity中的鍵盤監聽回調事件
- public boolean onKeyDown(int keyCode,KeyEvent event){
- //當用戶按下menu鍵的時候彈出對話框
- if(keyCode==KeyEvent.KEYCODE_MENU && event.getRepeatCount()==0){
- createDialog();
- }
- return false;
- }