Android开发中关于提示信息的管理

【声明】转载请注明出处,此文出自指尖飞落的博客:http://blog.csdn.net/huntersnail

——尊重作者,知识无价,交流无限!


在Android项目开发中,提示信息你还只是局限于在代码中插入各种Dialog、Toast吗?那我只能说你太loser了,那样的缺点是:

1、增加了代码的冗余性

2、减少了代码的可读性

3、也不符合开发中分层、封装、复用的思想......

综上所述,最好是在项目中开辟一个Utils包,一些常用的工具类封装在里面,想用时直接调用,以后开发中也可以拷过去直接用,这也是为什么很多公司都有自己的一套框架的原因。下面是我自己经常使用的一个提示信息的管理工具,喜欢的朋友不要手软直接拿去。不赞同的朋友可以留言,大家一起交流一下,呵呵~

不废话了,直接上代码:

package com.yiyun.mobileblottery.utils;

import com.yiyun.mobileblottery.R;

import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.widget.Toast;


/**
 * 提示信息的管理
 */
public class PromptManager {
	private static ProgressDialog dialog;

	public static void showProgressDialog(Context context) {
		dialog = new ProgressDialog(context);
		dialog.setIcon(R.drawable.icon);
		dialog.setTitle(R.string.app_name);

		dialog.setMessage("请等候,数据加载中……");
		dialog.show();
	}

	public static void closeProgressDialog() {
		if (dialog != null && dialog.isShowing()) {
			dialog.dismiss();
		}
	}

	/**
	 * 当判断当前手机没有网络时使用
	 * 
	 * @param context
	 */
	public static void showNoNetWork(final Context context) {
		AlertDialog.Builder builder = new Builder(context);
		builder.setIcon(R.drawable.icon)//
				.setTitle(R.string.app_name)//
				.setMessage("当前无网络").setPositiveButton("设置", new OnClickListener() {

					@Override
					public void onClick(DialogInterface dialog, int which) {
						// 跳转到系统的网络设置界面
						Intent intent = new Intent();
						intent.setClassName("com.android.settings", "com.android.settings.WirelessSettings");
						context.startActivity(intent);

					}
				}).setNegativeButton("知道了", null).show();
	}

	/**
	 * 退出系统
	 * 
	 * @param context
	 */
	public static void showExitSystem(Context context) {
		AlertDialog.Builder builder = new Builder(context);
		builder.setIcon(R.drawable.icon)//
				.setTitle(R.string.app_name)//
				.setMessage("是否退出应用").setPositiveButton("确定", new OnClickListener() {

					@Override
					public void onClick(DialogInterface dialog, int which) {
						android.os.Process.killProcess(android.os.Process.myPid());
						// 多个Activity——懒人听书:没有彻底退出应用
						// 将所有用到的Activity都存起来,获取全部,干掉
						// BaseActivity——onCreated——放到容器中
					}
				})//
				.setNegativeButton("取消", null)//
				.show();

	}

	/**
	 * 显示错误提示框
	 * 
	 * @param context
	 * @param msg
	 */
	public static void showErrorDialog(Context context, String msg) {
		new AlertDialog.Builder(context)//
				.setIcon(R.drawable.icon)//
				.setTitle(R.string.app_name)//
				.setMessage(msg)//
				.setNegativeButton(context.getString(R.string.is_positive), null)//
				.show();
	}

	public static void showToast(Context context, String msg) {
		Toast.makeText(context, msg, Toast.LENGTH_LONG).show();
	}

	public static void showToast(Context context, int msgResId) {
		Toast.makeText(context, msgResId, Toast.LENGTH_LONG).show();
	}

	// 当测试阶段时true
	private static final boolean isShow = true;

	/**
	 * 测试用 在正式投入市场:删
	 * 
	 * @param context
	 * @param msg
	 */
	public static void showToastTest(Context context, String msg) {
		if (isShow) {
			Toast.makeText(context, msg, Toast.LENGTH_LONG).show();
		}
	}

}
<pre name="code" class="java">☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆转载请注明出处☞指尖飞落的博客☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
 

                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android开发,我们可以利用DownloadManager类实现下载功能。DownloadManager是Android系统提供的一个用于管理下载任务的类,它负责处理下载请求,管理和控制下载任务的状态。 实现下载功能的步骤如下: 1. 创建DownloadManager对象: ``` DownloadManager downloadManager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE); ``` 2. 构建下载请求: ``` DownloadManager.Request request = new DownloadManager.Request(Uri.parse(downloadUrl)); request.setTitle("文件名"); // 设置下载文件的标题 request.setDescription("下载"); // 设置下载的描述信息 request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE); // 设置下载通知的可见性 request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "文件名"); // 设置下载文件的保存路径和文件名 ``` 3. 添加下载请求到DownloadManager队列: ``` long downloadId = downloadManager.enqueue(request); ``` 4. 监听下载状态: ``` BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { long id = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, -1); if (id == downloadId) { DownloadManager.Query query = new DownloadManager.Query(); query.setFilterById(downloadId); Cursor cursor = downloadManager.query(query); if (cursor.moveToFirst()) { int status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)); if (status == DownloadManager.STATUS_SUCCESSFUL) { // 下载成功 } else if (status == DownloadManager.STATUS_FAILED) { // 下载失败 } else if (status == DownloadManager.STATUS_RUNNING) { // 下载 } } cursor.close(); } } }; registerReceiver(receiver, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE)); ``` 通过以上步骤,我们可以利用DownloadManager实现下载功能。用户可以通过监听下载状态,获取下载任务的状态并进行相应的处理,例如在下载完成时显示通知,或者在下载失败时提示用户重新下载。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值