热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Android开发之缓冲dialog对话框创建、使用与封装操作

这篇文章主要介绍了Android开发之缓冲dialog对话框创建、使用与封装操作,结合具体实例形式分析了Android缓冲dialog对话框的创建、设置、显示、关闭等操作实现方法,需要的朋友可以参考下

本文实例讲述了Android开发之缓冲dialog对话框创建、使用与封装操作。分享给大家供大家参考,具体如下:

package com.hstech.handysystem.prompt;
import android.app.Dialog;
import android.content.Context;
import android.graphics.drawable.ColorDrawable;
import android.widget.TextView;
import com.hstech.handysystem.R;
  public class LoadingDialog {
  private Dialog loadingDialog;
  private TextView textView;
  private boolean isShowing = false;
  private int count = 0;
  public LoadingDialog(Context context) {
    loadingDialog = new Dialog(context, R.style.MyTheme_AppCompat_Light_Dialog);
    loadingDialog.setContentView(R.layout.loading);
    loadingDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
    loadingDialog.setCancelable(false);
    textView = (TextView) loadingDialog.findViewById(R.id.loading_message);
  }
  /**
   * 设置消息显示
   *
   * @param message
   */
  public void setMessage(String message) {
    textView.setText(message);
  }
  /**
   * 关闭对话框
   */
  public void dismiss() {
    if(count>0)count--;
    if(count==0) {
      loadingDialog.dismiss();
      isShowing = false;
    }
  }
  public void forceDismiss() {
      loadingDialog.dismiss();
      isShowing = false;
  }
  /**
   * 显示对话框
   */
  public void dialogShow() {
    count++;
    if(!isShowing) {
      loadingDialog.show();
      isShowing = true;
    }
  }
  public boolean isShowing(){
    return isShowing;
  }
}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。


推荐阅读
  • 在Swift项目中集成Objective-C类或第三方框架的方法
    本文通过实例讲解如何在Swift项目中引入并使用Objective-C编写的ProgressHUD库。首先需要在项目中添加库文件,并设置Objective-C桥接头文件以实现语言间的互操作性。 ... [详细]
  • ServletContext接口在Java Web开发中扮演着重要角色,它提供了一种方式来获取关于整个Web应用程序的信息。通过ServletContext,开发者可以访问初始化参数、共享数据以及应用资源。 ... [详细]
  • 本文介绍了如何在Linode服务器上以root用户身份安装Xubuntu,并解决尝试启动图形界面时遇到的'无屏幕找到'错误。 ... [详细]
  • 本文介绍了一种使用inotifywait和rsync工具在两台服务器之间实现自动且高效的文件同步方案。通过设置SSH无密码登录,安装必要的软件,并配置inotify以优化性能,最终构建了一个实时响应文件变动并自动同步至备份节点的系统。 ... [详细]
  • 本文介绍了在Linux系统(特别是Ubuntu)中遇到 'bash: tailf: command not found' 错误时的正确处理方法,推荐使用 `tail -f` 命令替代 `tailf`。 ... [详细]
  • 本文详细介绍了SSH(Secure Shell)的基础知识、应用场景以及如何在不同平台上使用SSH进行安全的远程操作。文章还探讨了SSH的高级用法,如免密登录和其他安全增强措施。 ... [详细]
  • 本文介绍了如何使用SecureCRT软件通过网络远程连接和管理树莓派的方法,包括获取树莓派的IP地址、配置SecureCRT以及完成安全连接的具体步骤。 ... [详细]
  • 解决MySQL错误2002:无法建立数据库连接
    本文详细描述了在Digital Ocean服务器上托管的多个WordPress站点突然出现数据库连接错误的情况,并提供了有效的解决方案。 ... [详细]
  • EVE-NG镜像扩充,迈向新高度!
    关注EmulatedLab微信公众号,获取最新文章及下载链接。本文将详细介绍EVE-NG的最新镜像更新,包括新增功能和使用技巧。 ... [详细]
  • Gitee + Git 多人协作开发指南:轻松上手,解决代码冲突
    本文提供了一套详细的步骤,帮助团队成员快速安装和配置Git,通过Gitee进行高效的多人协作开发,同时解决常见的代码冲突问题。包括Git的下载、安装、与Gitee的集成以及项目管理的最佳实践。 ... [详细]
  • DirectX11教程:利用几何着色器实现简易Billboard
    本文通过实现一个基于几何着色器(Geometry Shader)的Billboard案例,深入探讨DirectX 11中几何着色器的功能与应用。文章详细介绍了如何在顶点着色器中处理顶点数据,并在几何着色器中生成面向摄像机的四边形。 ... [详细]
  • 本文汇总了一系列适合Java和PHP毕业设计的题目,涵盖多个领域,旨在帮助即将完成学业的学生们找到合适的项目方向。 ... [详细]
  • 我目前正在通过以下编程练习进行训练: ... [详细]
  • 使用亚马逊免费服务部署Discuz!论坛指南(第一部分)
    本文将指导您如何利用亚马逊AWS提供的12个月免费试用服务来部署Discuz!论坛。仅需一张信用卡即可轻松注册并开始使用。文章将详细介绍从账号注册到实例创建的具体步骤。 ... [详细]
  • 本文介绍了通过动态端口技术增强Windows远程管理(WinRM)及OpenSSH服务的安全性方案。此方案旨在提高服务器抵御DDoS攻击的能力,并减少因固定端口暴露而带来的安全风险。 ... [详细]
author-avatar
路纺雅
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有