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平台下,进行多线程编程时,经常需要在主线程之外的一个单独的线程中进行某些处 ...
随机推荐
- jsp四大作用域之Application
<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding=& ...
- HDU 5459 Jesus Is Here (递推,组合数学)
有点麻烦的递推,递推的原则:向小的问题方向分解,注意边界. 字符串的递推式为 定义f为Si中的总方案数 首先可以得到 fi=fi-1+fi-2+组合(si-2,si-1) 然后考虑Si-2和Si-1之 ...
- codeforce Gym 100570B ShortestPath Query (最短路SPFA)
题意:询问单源最短路径,每条边有一个颜色,要求路径上相邻边的颜色不能相同,无重边且边权为正. 题解:因为路径的合法性和边的颜色有关, 所以在做spfa的时候,把边丢到队列中去,松弛的时候注意判断一下颜 ...
- PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep
PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep ...
- jsp页面之间传值 以及如何取出url的参数
写项目时往往要写多个页面,而多个jsp之间传值有时是必要的,这时可以用到如下方法: 而在另一个页面取值可以用:${param.xxx} 此处的xxx就是要传递的值
- JS事件类型--1
滚轮事件其实就是一个mousewheel事件,这个事件跟踪鼠标滚轮,类似Mac的触屏版. 一.客户区坐标位置 鼠标事件都是在浏览器视口的特定位置上发生的.这个位置信息保存在事件对象的clientX和c ...
- Eclipse+Tomcat搭建jsp服务器
首先,安装java sdk 环境,这里就不多说了,附上java sdk的下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk ...
- iOS 解决ipv6问题
解决ipv6的方法有很多种,由于现在国内的网络运营商还在使用ipv4的网络环境,所以appstore应用不可能大范围去修改自己的服务器, 而且国内的云服务器几乎没有ipv6地址. 这里附上苹果开发平台 ...
- Pig Latin-freecodecamp算法题目
Pig Latin 1.要求 Pig Latin把一个英文单词的第一个辅音或辅音丛(consonant cluster)移到词尾,然后加上后缀 "ay". 如果单词以元音开始,你只 ...
- Markdown中如何添加特殊符号
符号 说明 编码 符号 说明 编码 符号 说明 编码 " 双引号 " × 乘号 × ← 向左箭头 ← & AND符号 & ÷ 除号 ÷ ↑ 向上箭头 ↑ < ...