首页 > 解决方案 > 线程上的分片事务

问题描述

我正在尝试进行需要一些时间在线程上运行的片段事务,以便 UI 不会停止并且我可以显示类似进度条的内容。我已经试过了

new Thread(new Runnable() {
            @Override
            public void run() {
                MyFragment fragment = new MyFragment(); //This fragment requires some time to show
                String fragmentTag = "fragmentTag";
                FragmentManager fragmentManager = getSupportFragmentManager();
                FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
                fragmentTransaction.replace(R.id.frameLayout, fragment, fragmentTag);
                fragmentTransaction.commit();
            }
        }).start();

我怎样才能做到这一点?谢谢

标签: androidmultithreadingfragment

解决方案


最好在片段方法本身中使用这个新线程并让事务发生在主线程上。

如果您在片段中执行一些计算(非 UI),则将该块放入一个新线程中。


推荐阅读