代码改变世界

Android线程中使用Toast、dialog、loading

Loading:

Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
Looper.prepare();
LoadingUnit.showLoading(context);
          if (!result.isEmpty()) {
JSONObject paramJson = JSON.parseObject(result);
String resultFlag = paramJson.getString("result_flag");
resultId = paramJson.getString("yw_user_id");
versionValue = paramJson.getString("app_version");
versionUrlValue = paramJson.getString("app_download_url");
if ("1".equals(resultFlag)) {
loginReturnValue = "1";
LoadingUnit.cancel();
}else if ("2".equals(resultFlag)) {
loginReturnValue = "2";
LoadingUnit.cancel();
}else if ("3".equals(resultFlag)) {
loginReturnValue = "3";
LoadingUnit.cancel();
}else{
loginReturnValue = "4";
LoadingUnit.cancel();
}
}

  

} });

Toast:

 private Handler handlerSuccess = new Handler() {
@Override
public void handleMessage(Message msg) {
Toast.makeText(CommodityDetails.this, "修改成功!", Toast.LENGTH_SHORT).show();
}
};

  使用:

handlerSuccess.sendEmptyMessage(0);

Dialog同上

期待美好!

Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
Looper.prepare();
LoadingUnit.showLoading(context);
JSONObject jsonObject = new JSONObject();
String json = "";
try {
jsonObject.put("yw_user_phone", showName);
jsonObject.put("yw_user_password", showPaw);
json = JSONObject.toJSONString(jsonObject);//参数拼接成的String型json
json = URLEncoder.encode(json, "UTF-8");
} catch (Exception e) {
e.printStackTrace();
} String result = CallAPIUtil.ObtainFun(json, Common.loginUrl); if (!result.isEmpty()) {
JSONObject paramJson = JSON.parseObject(result);
String resultFlag = paramJson.getString("result_flag");
resultId = paramJson.getString("yw_user_id");
versionValue = paramJson.getString("app_version");
versionUrlValue = paramJson.getString("app_download_url");
if ("1".equals(resultFlag)) {
loginReturnValue = "1";
LoadingUnit.cancel();
}else if ("2".equals(resultFlag)) {
loginReturnValue = "2";
LoadingUnit.cancel();
}else if ("3".equals(resultFlag)) {
loginReturnValue = "3";
LoadingUnit.cancel();
}else{
loginReturnValue = "4";
LoadingUnit.cancel();
}
}
}
});

Android线程中使用Toast、dialog、loading的更多相关文章

  1. Android 高级UI设计笔记17:Android在非UI线程中显示Toast

    1. 子线程的Toast怎么显示不出来? 因为Toast在创建的时候会依赖于一个Handler,并且一个Handler是需要有一个Looper才能够创建,而普通的线程是不会自动去创建一个Looper对 ...

  2. Android开发之在子线程中使用Toast

    在子线程中使用Toast的时候,出现Force close. 错误提示:Can't create handler inside thread that has not called Looper.pr ...

  3. Toast的用法(可以设置显示时间,自定义布局的,线程中的Toast)

           自定义的Toast类 布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLa ...

  4. 如何在子线程中使用Toast和更新UI

    因为没一个Looper处理消息循环,所以子线程中无法使用Toast 方法: Looper.prepare(); Toast.makeText(getActivity(),"刷到底啦" ...

  5. Looper.loop() android线程中的消息循环

    Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Loope ...

  6. vue中alert toast confirm loading 公用

    import Vue from 'vue' import { ToastPlugin, AlertPlugin, ConfirmPlugin, LoadingPlugin } from 'vux' / ...

  7. Android线程中设置控件

    在Android中经常出现多线程中设置控件的值报错的情况,今天教大家封装一个简单的类避免这样的问题,同样也调用实现也非常的方便. 自定义类: /** * Created by wade on 2016 ...

  8. Android进阶:六、在子线程中直接使用 Toast 及其原理

    一般我们都把Toast当做一个UI控件在主线程显示.但是有时候非想在子线程中显示Toast,就会使用Handler切换到主线程显示. 但是子线程中真的不能直接显示Toast吗? 答案是:当然可以. 那 ...

  9. (转)Android在子线程中更新Activity中UI的方法

    转:http://blog.sina.com.cn/s/blog_3fe961ae0100mvc5.html 在Android平台下,进行多线程编程时,经常需要在主线程之外的一个单独的线程中进行某些处 ...

随机推荐

  1. 如何将S/4HANA系统存储的图片文件用Java程序保存到本地

    我在S/4HANA的事务码MM02里为Material维护图片文件作为附件: 通过如下简单的ABAP代码即可将图片文件的二进制内容读取出来: REPORT zgos_api. DATA ls_appl ...

  2. Android(java)学习笔记132:eclipse 导入项目是提示:某些项目因位于工作空间目录中而被隐藏。

    导致这个错误的原因是工程重名了: 并不是仅仅指文件夹重名,相信很多人也曾经修改过文件夹的名称,可惜没什么用处,关键是修改工程里面的一个文件! 也就是.project这个文件! 用记事本打开,修改一下& ...

  3. Vector 容器简单介绍

    # Vector STL简要介绍 关于STL中的vector容器,以下做一些相关介绍. #### vector 简要概述 vector 称作向量类,属于容器类,实现了动态的数组,用于元素数量变化的对象 ...

  4. 在CNN中使用Tensorflow进行数据增强

    开始之前,需要思考一些基本问题 1.为什么需要大量数据 当您训练机器学习模型时,您真正在做的是调整其参数,以便它可以将特定输入(例如,图像)映射到某个输出(标签).我们的优化目标是追逐我们模型损失较低 ...

  5. 剑指offer58 二叉树的下一个结点

    自己写的 class Solution { public: TreeLinkNode* GetNext(TreeLinkNode* pNode) { if(pNode == NULL) return ...

  6. ubuntu k8s 命令补全

    apt install bash-completion // locate bash_completion source /usr/share/bash-completion/bash_complet ...

  7. HTML5<footer>元素

    HTML5中<footer>元素是用来描述文档中的底部信息,比如:版本,版权,作者,链接声明,联系信息,时间等等. 实例: <footer> <p>这是一个底部的信 ...

  8. iOS重绘机制drawRect

    iOS的绘图操作是在UIView类的drawRect方法中完成的,所以如果我们要想在一个UIView中绘图,需要写一个扩展UIView 的类,并重写drawRect方法,在这里进行绘图操作,程序会自动 ...

  9. Truncate a string-freecodecamp算法题目

    Truncate a string(截断字符串) 要求 如果字符串的长度比指定的参数num长,则把多余的部分用...来表示. 插入到字符串尾部的三个点号也会计入字符串的长度. 如果指定的参数num小于 ...

  10. 【转】浅谈对主成分分析(PCA)算法的理解

    以前对PCA算法有过一段时间的研究,但没整理成文章,最近项目又打算用到PCA算法,故趁热打铁整理下PCA算法的知识.本文观点旨在抛砖引玉,不是权威,更不能尽信,只是本人的一点体会. 主成分分析(PCA ...