Android使用第三方弹出框Sweet Alert Dialog实现退出app (简易新闻 (十五))
关于
使用第三方SweetAlertDialog实现退出弹出框提示。
看一下效果:
实现过程
第一步,添加引用到build.gradle中
//第三方弹出框
implementation 'com.github.cazaea:sweet-alert-dialog:1.0.0'
//关于本文中使用的其他的框架的引用就不写出来了,在系列文章中都有使用
第二步,修改MainAcitivity.java
先讲一下修改的代码,:
final SweetAlertDialog mDialog = new SweetAlertDialog(MainActivity.this,SweetAlertDialog.NORMAL_TYPE)
.setTitleText("提示")
.setContentText("您是否要退出?")
.setCustomImage(null)
.setCancelText("取消")
.setConfirmText("确定")
.setCancelClickListener(new SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick( SweetAlertDialog sweetAlertDialog) {
sweetAlertDialog.dismiss();
}
}).setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sweetAlertDialog) {
sweetAlertDialog.dismiss();
ActivityCollector.finishAll();
}
});
mDialog.show();
然后就是在简易新闻中的使用了,不是系列文章的查看着就不需要继续往下啦,因为到此就已经实现了本文要讲解的东西。有问题欢迎批评指正!
package com.example.frametest;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.provider.MediaStore;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.NavigationView;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.support.v4.view.GravityCompat;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBar;
import android.os.Bundle;
import android.text.InputType;
import android.text.TextUtils;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.afollestad.materialdialogs.MaterialDialog;
import com.amap.api.location.AMapLocation;
import com.amap.api.location.AMapLocationClient;
import com.amap.api.location.AMapLocationClientOption;
import com.amap.api.location.AMapLocationListener;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.RequestOptions;
import com.cazaea.sweetalert.SweetAlertDialog;
import com.example.frametest.UserMode.LoginActivity;
import com.example.frametest.UserMode.SplashActivity;
import com.example.frametest.UserMode.User;
import com.example.frametest.UserMode.UserFavoriteActivity;
import com.example.frametest.UserMode.User_DataActivity;
import com.example.frametest.tools.ActionSheet;
import com.example.frametest.tools.ActivityCollector;
import com.example.frametest.tools.BasicActivity;
import com.example.frametest.tools.DBOpenHelper;
import com.example.frametest.tools.MyApplication;
import com.example.frametest.tools.ToastUtil;
import com.google.gson.Gson;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
import de.hdodenhof.circleimageview.CircleImageView;
import interfaces.heweather.com.interfacesmodule.bean.Lang;
import interfaces.heweather.com.interfacesmodule.bean.Unit;
import interfaces.heweather.com.interfacesmodule.bean.air.now.AirNow;
import interfaces.heweather.com.interfacesmodule.bean.weather.now.Now;
import interfaces.heweather.com.interfacesmodule.view.HeWeather;
import jp.wasabeef.glide.transformations.BlurTransformation;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class MainActivity extends BasicActivity {
private android.support.v7.widget.Toolbar toolbar;
private DrawerLayout mDrawerLayout;
private NavigationView navigationView;
private TabLayout tabLayout;
private ViewPager viewPager;
private List<String> list;
private TextView tvhuoqu,tvName;
String phonenumber,userName;
private static final int USER_LOOK_NAME = 0;
private static final int USER_FEEDBACK = 1;
private static final int USER_ISNULL = 2;
private static boolean mBackKeyPressed = false;//记录是否有首次按键
private TextView tv_tianqi,tv_kongqi,tv_airqlty;
ImageView image_weather,image_exit;
ImageView imageView_beij;
CircleImageView circleImageView;
public AMapLocationClient mLocationClient=null;
//声明定位回调监听器
public AMapLocationClientOption mLocationOption=null;
private ActionSheet actionSheet;
private String CityId;
static Context mContext;
@SuppressLint("HandlerLeak")
private Handler userFeedHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
String admin_title,admin_url,user_name;
switch (msg.what){
case USER_LOOK_NAME:
User user = (User) msg.obj;
user_name =user.getUser_name();
tvName = (TextView) findViewById(R.id.text_username);
tvName.setText(user_name);
break;
case USER_FEEDBACK:
Toast.makeText(MainActivity.this,"反馈成功",Toast.LENGTH_SHORT).show();
break;
case USER_ISNULL:
Toast.makeText(MainActivity.this,"用户未登录!