package com.dl7.mvp.utils; import android.content.Context; import android.content.DialogInterface; import android.support.v7.app.AlertDialog; import android.view.View; import com.dl7.downloaderlib.model.DownloadStatus; import com.dl7.mvp.engine.DownloaderWrapper; import com.dl7.mvp.local.table.VideoInfo; import com.dl7.mvp.module.manage.download.DownloadActivity; import com.flyco.dialog.widget.popup.BubblePopup; /** * Created by Rukey7 on 2016/12/12. */ public final class DialogHelper { private DialogHelper() { throw new AssertionError(); } /** * 下载对话框 * @param context * @param data */ public static void downloadDialog(Context context, final VideoInfo data) { String title = "剩余容量(" + StringUtils.convertStorageNoB(SDCardUtils.getFreeSpaceBytes()) + ")"; AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle(title) .setMessage("下载需要大量流量,在非wifi下请慎重,是否下载?") .setNegativeButton("取消", null) .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { DownloaderWrapper.start(data); } }); builder.create().show(); } /** * 下载对话框 * @param context * @param listener */ public static void downloadDialog(Context context, DialogInterface.OnClickListener listener) { String title = "剩余容量(" + StringUtils.convertStorageNoB(SDCardUtils.getFreeSpaceBytes()) + ")"; AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle(title) .setMessage("下载需要大量流量,在非wifi下请慎重,是否下载?") .setNegativeButton("取消", null) .setPositiveButton("确定", listener); builder.create().show(); } /** * 查阅对话框 * @param context * @param data */ public static void checkDialog(final Context context, final VideoInfo data) { String msg; if (data.getDownloadStatus() == DownloadStatus.COMPLETE) { msg = "任务已缓存,点击查看"; } else { msg = "任务正在缓存,点击查看"; } AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle("提示") .setMessage(msg) .setNegativeButton("取消", null) .setPositiveButton("查看任务", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { if (data.getDownloadStatus() == DownloadStatus.COMPLETE) { DownloadActivity.launch(context, 0); } else { DownloadActivity.launch(context, 1); } } }); builder.create().show(); } /** * 删除 * @param context * @param listener */ public static void deleteDialog(Context context, DialogInterface.OnClickListener listener) { AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setMessage("是否删除?").setPositiveButton("确定", listener).setNegativeButton("取消", null); builder.create().show(); } /** * 生成 Popup * @param context * @param layoutResId * @return */ public static BubblePopup createPopup(Context context, int layoutResId) { View inflate = View.inflate(context, layoutResId, null); return new BubblePopup(context, inflate); } }