Android线程中使用Toast、dialog、loading
代码改变世界
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的更多相关文章
- Android 高级UI设计笔记17:Android在非UI线程中显示Toast
1. 子线程的Toast怎么显示不出来? 因为Toast在创建的时候会依赖于一个Handler,并且一个Handler是需要有一个Looper才能够创建,而普通的线程是不会自动去创建一个Looper对 ...
- Android开发之在子线程中使用Toast
在子线程中使用Toast的时候,出现Force close. 错误提示:Can't create handler inside thread that has not called Looper.pr ...
- Toast的用法(可以设置显示时间,自定义布局的,线程中的Toast)
自定义的Toast类 布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLa ...
- 如何在子线程中使用Toast和更新UI
因为没一个Looper处理消息循环,所以子线程中无法使用Toast 方法: Looper.prepare(); Toast.makeText(getActivity(),"刷到底啦" ...
- Looper.loop() android线程中的消息循环
Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Loope ...
- vue中alert toast confirm loading 公用
import Vue from 'vue' import { ToastPlugin, AlertPlugin, ConfirmPlugin, LoadingPlugin } from 'vux' / ...
- Android线程中设置控件
在Android中经常出现多线程中设置控件的值报错的情况,今天教大家封装一个简单的类避免这样的问题,同样也调用实现也非常的方便. 自定义类: /** * Created by wade on 2016 ...
- Android进阶:六、在子线程中直接使用 Toast 及其原理
一般我们都把Toast当做一个UI控件在主线程显示.但是有时候非想在子线程中显示Toast,就会使用Handler切换到主线程显示. 但是子线程中真的不能直接显示Toast吗? 答案是:当然可以. 那 ...
- (转)Android在子线程中更新Activity中UI的方法
转:http://blog.sina.com.cn/s/blog_3fe961ae0100mvc5.html 在Android平台下,进行多线程编程时,经常需要在主线程之外的一个单独的线程中进行某些处 ...
随机推荐
- POJ 3252 Round Numbers (区间DP,基础)
题意: 统计区间[L,R]有多少个数,其二进制表示法中的0的个数不少于1的个数?(不允许前缀0) 思路: 状态表示为 [当前第几位][总位数][1的个数],最后判断一下1的个数是否满足条件,要注意前导 ...
- python爬虫之路——变量和变量类型
变量类型: ①单值:int ②多值:数组 ③复杂:类 变量类型:就是变量的数据结构,表示这个变量所代表的内容的格式是怎样的. (多值)四种基本数据结构: 列表,字典,元组,集合 列表: ①元素可变, ...
- 第010课_掌握ARM芯片时钟体系
from:第010课_掌握ARM芯片时钟体系 第001节_S3C2440时钟体系结构 S3C2440是System On Chip(SOC),在芯片省不仅仅有CPU,还有一堆外设. 至于有哪些外设,可 ...
- 剑指offer38 数字在排序数组中出现的次数
这种方法没用迭代,而是使用了循环的方式 class Solution { public: int GetNumberOfK(vector<int> data ,int k) { if(da ...
- python递归与非递归实现斐波那契数列
1.题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). 递归实现: class Solution(): def Fibnacci(self ...
- Django 模板函数
Django 模板函数 在模板中的函数是只需要函数名,不用加括号,自动执行 在前端中的函数 不用加括号,函数自动执行 前端 {% for item in userinfo.keys %} <h3 ...
- CentOS7-samba文件共享服务
简介: Samba,是在Unix上实现SMB(Server Message Block)的一个工具套件.而SMB通常是windows用来实现共享的,包括文件和打印机等.而Unix上装上SMB,则使得U ...
- React入门教程(二)
前言 距离上次我写 React 入门教程已经快2个月了,年头年尾总是比较忙哈,在React 入门教程(一)我大概介绍了 React 的使用和一些注意事项,这次让我们来继续学习 React 一. Rea ...
- Codevs1080 线段树练习
题目描述 Description 一行N个方格,开始每个格子里都有一个整数.现在动态地提出一些问题和修改:提问的形式是求某一个特定的子区间[a,b]中所有元素的和:修改的规则是指定某一个格子x,加上或 ...
- 【Git版本控制】git将单个文件回退到某一版本
暂定此文件为a.jsp 1.进入到a.jsp所在目录,通过 git log a.jsp查看a.jsp的更改记录 2.找到想要回退的版本号:例如 fcd2093 通过 git reset fcd2 ...