gpt4 book ai didi

android - 不同线程中的startActivty

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:42:35 25 4
gpt4 key购买 nike

我是 android 的新手。希望这不是一个愚蠢的问题。

protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

new Thread(new Runnable()
{
public void run()
{
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
}
}).start();
}

问题:为什么这行得通? startActivity 可以从辅助线程调用是否正常?

我认为所有与 UI 相关的事情都必须在 UI 线程中完成。

最佳答案

startActivity 不是即时的。它安排 Activity 的开始在主线程上的下一个可用周期运行,因此您可以从任何地方调用它。 (但这并不一定意味着这是个好主意。)

你不应该在主线程之外的任何地方接触 View 层次结构。那是一个不同的问题。

关于android - 不同线程中的startActivty,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36389724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com