代码改变世界

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. 2017.10.5 QBXT 模拟赛

    题目链接 T1 从小到大排序,用sum记录前缀和,然后枚举1~n个数 ,如果当前的前缀和 + 1小于a[i]的话 那么 sum + 1永远不可能拼出来 直接输出sum + 1 ,否则统计前缀和.最后如 ...

  2. BZOJ 3130: [Sdoi2013]费用流 网络流+二分

    3130: [Sdoi2013]费用流 Time Limit: 10 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 1230  Solved: ...

  3. mininet安装,使用

    http://mininet.org/download/ http://sdnhub.cn/index.php/mininet-walkthrough-chinese/ --------------- ...

  4. Python-OpenCV——Image Blurring(Image Smoothing)

    通过将图像与低通滤波器内核卷积来实现图像模糊.它有助于消除噪音.它实际上从图像中去除了高频内容(例如:噪声,边缘).因此在此操作中边缘会有点模(嗯,有模糊技术,也不会模糊边缘). OpenCV主要提供 ...

  5. intellij idea自定义快捷键

    intellij idea自定义快捷键比较简单,自带. 首先进入idea,File-->Settings-->Live Templates. 点击右上方的“+”,第一次需要创建一个分组. ...

  6. Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'fundService': Injection of resource dependencies failed;

    在进行SSM的Controller的编写, 从浏览器访问后端Controller的时候遇到了这个问题. 这个问题的描述: 创建Bean的对象失败 错误代码如下: @Service("fund ...

  7. AddDbContext was called with configuration, but the context type 'NewsContext' only declares a parameterless constructor?

    问题 An error occurred while starting the application. ArgumentException: AddDbContext was called with ...

  8. UIDeviceOrientation 和 UIInterfaceOrientation

    有时候,我们处理自动布局时,需要获取到屏幕旋转方向: 以下为本人亲测: UIInterfaceOrientation: 我们需要在- (void)viewDidLoad或其他方法中添加观察者,检测屏幕 ...

  9. 控件中添加的成员变量value和control的区别

    control型变量是这个控件所属类的一个实例(对象)可以通过这个变量来对该控件进行一些设置.而value只是用来传递数据,不能对控件进行其它的操作.control型变量可以获得控件的实例,通过这个变 ...

  10. NOIP2018 - 暑期博客整理

    暑假写的一些博客复习一遍.顺便再写一遍或者以现在的角度补充一点东西. 盛暑七月 初涉基环外向树dp&&bzoj1040: [ZJOI2008]骑士 比较经典的基环外向树dp.可以借鉴的 ...