android kotlin 子线程中调用界面UI组件崩溃
UI 只能在主线程内更新,子线程需要更新UI组件时可以这样:
    fun fuck(){
        Executors.newSingleThreadExecutor().execute{
            // url request ...
            val visibility = View.VISIBLE
            Handler(mainLooper).post {
                val btn = findViewById<Button>(R.id.button)
                btn.visibility = visibility
            }
        }
        Thread{
            println("hi there")
            Handler(Looper.getMainLooper()).post{
                  val btn = findViewById<Button>(R.id.button)
            }
        }.start()
    }
												
											android kotlin 子线程中调用界面UI组件崩溃的更多相关文章
- Android 在子线程中更新UI
		
今天在做练习时,在一个新开启的线程中调用“Toast.makeText(MainActivity.this, "登陆成功",Toast.LENGTH_SHORT).show();” ...
 - Android--Handler的用法:在子线程中更新界面
		
本文主要介绍Android的Handler的用法.Handler能够发送Messsage和Runnable对象到与其相关联的线程的消息队列. 每一个Handler对象与创建它的线程相关联.而且每一个H ...
 - 子线程中刷新了UI
		
This application is modifying the autolayout engine from a background thread, which can lead to engi ...
 - Android在子线程中更新UI(二)
		
MainActivity如下: package cc.testui2; import android.os.Bundle; import android.view.View; import andro ...
 - (转)Android在子线程中更新Activity中UI的方法
		
转:http://blog.sina.com.cn/s/blog_3fe961ae0100mvc5.html 在Android平台下,进行多线程编程时,经常需要在主线程之外的一个单独的线程中进行某些处 ...
 - Android在子线程中更新UI(一)
		
MainActivity如下: package cc.testui1; import android.os.Bundle; import android.os.Handler; import andr ...
 - EXC_BAD_ACCESS(code=2,address=0xcc 异常解决 及 建议不要在子线程中刷新界面
		
iOS 上不建议在非主线程进行UI操作,在非主线程进行UI操作有很大几率会导致程序崩溃,或者出现预期之外的效果. 我开始不知道这一点,在子线程中进行了弹窗操作,结果程序就出问题了! 报的错误是(EXC ...
 - 子线程中如何修改ui界面
		
1.Android进程 一个应用程序被启动时,系统默认创建执行一个叫做"main"的线程.这个线程也是你的应用与界面工具包(android.widget和android.view包 ...
 - Android 在子线程中更新UI的几种方法
		
第一种: new Handler(context.getMainLooper()).post(new Runnable() { @Override public void run() { // 在这里 ...
 
随机推荐
- K8s之Prometheus监控
			
目录 容器监控与报警 Prometheus prometheus简介 prometheus系统架构 prometheus 安装方式 容器方式安装prometheus operator部署 克隆项目 创 ...
 - Apollo mqtt 服务器搭建
			
html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select ...
 - SpringBoot整合Guacamole教程
			
前言 本文主要介绍的是SpringBoot如何整合Guacamole在浏览器是远程桌面的访问. Guacamole 介绍 Apache Guacamole 是一个无客户端远程桌面网关.它支持标准协议, ...
 - 承载童年的游戏机,已停产!但我在 GitHub 找到了它们
			
那些年,上网用的是电话线,小企鹅也只会笨拙地左右摇晃,手机还只是打电话的工具.虽然那些年没有互联网,但游戏机承载了我的童年. 小时候我老是追着我的两个哥哥,他们带我玩了好多种游戏机,比如街机.红白机. ...
 - C++//递增运算符重载
			
1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 //重载递增运算符 6 7 //自定义 ...
 - C++  //深拷贝与浅拷贝  //浅拷贝 : 简单的赋值拷贝操作 //深拷贝:  在堆区重新申请空间  进行拷贝操作
			
1 //深拷贝与浅拷贝 2 3 //浅拷贝 : 简单的赋值拷贝操作 4 //深拷贝: 在堆区重新申请空间 进行拷贝操作 5 6 7 #include <iostream> 8 using ...
 - 从门外汉到腾讯Android高级研发——一个半路出家菜鸟的艰难逆袭之路
			
我是在去年3月份加入腾讯公司,目前是腾讯公司某技术部门里面的一个小负责人,年薪月薪大税后概30K,谈不上多么厉害,但在回想自己半路出家学习编程,从一个销售到现在终于进入中国互联网顶尖公司,还是有些许感 ...
 - mysql《一》
			
一.启动和停止服务器 通过管理员权限打开cmd命令指示符 通过 net stop mysql(自己的服务器名字) 停止服务器 通过 net start mysql(自己的服务器名字) 启动服务器 ...
 - java中sort方法的自定义比较器写法(转载)
			
java中sort方法的自定义比较器写法 摘要 在做一些算法题时常常会需要对数组.自定义对象.集合进行排序. 在java中对数组排序提供了Arrays.sort()方法,对集合排序提供Collecti ...
 - 1016 Phone Bills (25分)
			
复建的第一题 理解题意 读懂题目就是一个活,所以我们用观察输出法,可以看出来月份,以及时间和费用之间的关系. 定义过程 然后时间要用什么来记录呢?day hour minute 好麻烦呀..用字符串吧 ...