android 退出按钮

来源:互联网 发布:linux daemon 进程 编辑:程序博客网 时间:2024/05/01 21:43


如果要彻底结束一个Android程序,那么可以直接利用Activity类中提供的finish()方法完成。

很多用户在使用Android手机的时候,在退出程序时都习惯按屏幕上的返回键,要想对此操作进行监听,就要复写一个操作方法,对按键进行监听。

 

在main.xml中

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="horizontal" >

    <ImageButton

        android:id="@+id/but"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:src="@drawable/exit"/>

</LinearLayout>

 

 

在MyDialogDemo.java程序中

package com.tarena.dialog;

 

import android.app.Activity;

import android.app.AlertDialog;

import android.app.Dialog;

import android.content.DialogInterface;

import android.os.Bundle;

import android.view.KeyEvent;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.ImageButton;

 

public class MyDialogDemo extends Activity {

  private ImageButton but = null;  //定义按钮

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        super.setContentView(R.layout.main);  //调用布局管理器

        this.but = (ImageButton) super.findViewById(R.id.but);  //取得按钮

        this.but.setOnClickListener(new OnClickListenerImpl());  //设置事件类

    }

    private class OnClickListenerImpl implements OnClickListener{

 

     public void onClick(View v) {

          MyDialogDemo.this.exitDialog();  //调用退出的方法

     }

    }

  @Override

  public boolean onKeyDown(int keyCode, KeyEvent event) {

     if(keyCode == KeyEvent.KEYCODE_BACK){ //如果按了返回键

       MyDialogDemo.this.exitDialog();    //调用退出的方法

     }

     return false;

  }

  private void exitDialog(){  //退出程序的方法

      Dialog dialog = new AlertDialog.Builder(MyDialogDemo.this)

        .setTitle("程序退出?")  // 创建标题

        .setMessage("您确定要退出吗?")    //表示对话框的内容

        .setIcon(R.drawable.ic_launcher) //设置LOGO

        .setPositiveButton("确定", new DialogInterface.OnClickListener() {

           public void onClick(DialogInterface dialog, int which) {

              MyDialogDemo.this.finish(); //操作结束

            }

       }).setNegativeButton("取消", new DialogInterface.OnClickListener() {

           public void onClick(DialogInterface dialog, int which) {

            }

         }).create();  //创建对话框

   dialog.show();  //显示对话框

  }

   

}

原创粉丝点击