android两次点击返回键退出和按钮退出对话框
16lz
2021-12-04
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${relativePackage}.${activityClass}" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="82dp" android:text="TextView" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="164dp" android:text="@string/hello_world" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView2" android:layout_below="@+id/textView2" android:layout_marginLeft="16dp" android:layout_marginTop="74dp" android:text="退出" /></RelativeLayout>
package com.example.andtest_1;import android.app.Activity;import android.app.AlertDialog;import android.app.AlertDialog.Builder;import android.app.Dialog;import android.content.DialogInterface;import android.os.Bundle;import android.view.KeyEvent;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity {private TextView tv1, tv2;private Button btn;private long firstTime = 0;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// tv1,tv2;tv1 = (TextView) findViewById(R.id.textView1);tv2 = (TextView) findViewById(R.id.textView2);btn = (Button) findViewById(R.id.button1);tv1.setText("tv1");tv2.setText("tv2");btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO 自动生成的方法存根dialog();}});}// //onCreateprivate void dialog() {AlertDialog.Builder builder = new Builder(MainActivity.this);builder.setTitle("提示");builder.setMessage("您确认退出吗?");builder.setPositiveButton("确定",new android.content.DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// TODO 自动生成的方法存根dialog.dismiss();MainActivity.this.finish();}});builder.setNegativeButton("取消",new android.content.DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// TODO 自动生成的方法存根dialog.dismiss();}});builder.create().show();}// /dialog@Overridepublic boolean onKeyUp(int keyCode, KeyEvent event) {// TODO 自动生成的方法存根switch (keyCode) {case KeyEvent.KEYCODE_BACK:long secondTime = System.currentTimeMillis();if (secondTime - firstTime > 2000) {Toast.makeText(MainActivity.this, "再按一次退出程序",Toast.LENGTH_SHORT).show();firstTime = secondTime;// //这句千万别忘了!!!!return true;} else {System.exit(0);}break;}return super.onKeyUp(keyCode, event);}}
更多相关文章
- 浅谈Java中Collections.sort对List排序的两种方法
- Python list sort方法的具体使用
- python list.sort()根据多个关键字排序的方法实现
- Android(安卓)Exception异常汇集【不定时更新】
- android volley 上传文件
- Android(安卓)调用.NET webservice
- Android(安卓)Studio 更新SDK 腾讯镜像使用方法
- android onSaveInstanceState的使用方法
- Android(安卓)获取屏幕分辨率