问题:Android.view.ViewRootImpl$CalledFromWrongThreadException: Only the or
问题:Android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a
我的场景是
LinearLayout.LayoutParams params11
= new LinearLayout.LayoutParams(264, LinearLayout.LayoutParams.WRAP_CONTENT);
bt21.setLayoutParams(params11);
更新设置UI
问题的意思是更新UI阻塞了主线程
解决方法: 利用runOnUiThread,下面是我一个例子,关于runOnUiThread的用法,自行查询
runOnUiThread(new Runnable() {
@Override
public void run() {
//更改UI;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//TODO todo somthing here
System.out.println("宽度" + bt1.getWidth());
LinearLayout.LayoutParams params1
= new LinearLayout.LayoutParams(bt1.getWidth(),
LinearLayout.LayoutParams.WRAP_CONTENT);
bt2.setLayoutParams(params1);
}
},1 * 1000); //延迟10秒执行
}
});
--结束END--
本文标题: 问题:android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original
本文链接: https://www.lsjlt.com/news/29568.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-01-21
2023-10-28
2023-10-28
2023-10-27
2023-10-27
2023-10-27
2023-10-27
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0