微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我们为什么在应用程序中使用RunOnUiThread

如何解决我们为什么在应用程序中使用RunOnUiThread

我是android新手,我有一个问题,它看起来很傻,但是我需要知道。 我正在寻找一个在git中上传的开放项目的源代码,该应用程序以身份验证活动开始 用户输入他/她的用户名密码,如果该密码在数据库中不存在,它将显示一个小吃店,但是如果该密码在数据库中存在,则该应用程序将执行以下操作:

RunOnUiThread(() => { TransitToServiceListActivity();});

TransitToServiceListActivity()方法中,代码定义了一个新的意图,并开始导航到与该意图相关的活动。

所以我的问题是,为什么首先我们没有开始导航到其他活动。

为什么我们需要首先做

RunOnUiThread(() => { TransitToServiceListActivity();});

然后注视以在活动之间导航?

为什么不从我们要转移到的活动中创建意图,然后将该活动称为 RunOnUiThread(() => { TransitToServiceListActivity();});解决了我们正在使用的什么问题?

解决方法

RunOnUiThread的目的是确保在UI线程中执行给定的Runnable

因此,方法 RunOnUiThread 是在除主线程之外的其他线程中运行时调用的,并且要求在主线程中执行一些特定的代码。尽管在模棱两可的代码块中调用(也可以在UI线程或后台线程中调用)也是完全有效的,但是对于RunOnUiThread而言,如果必须立即执行可运行对象或将其传递给主线程,则这种情况将得以解决。>

我猜测您正在查看的代码可能正在后台线程中执行身份验证。如果没有,并且没有机会永远不会在后台线程中执行身份验证,那么就没有必要使用RunOnUiThread。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。