0

インポート メソッドを実行していますが、アプリの速度が完全に低下します。UI とは別のスレッドで実行したいと思いますが、その方法がわかりません。メソッドに渡されるパラメーターは必要ありません。UI とは別に実行する必要があるだけです。

4

2 に答える 2

2

Android デベロッパー ブログから、Painless Threadingに関する常に人気のあるブログ投稿をお読みください。

于 2013-07-03T18:49:23.753 に答える
0

GUI をブロックしないスレッドを作成して開始する方法は次のとおりです。

Thread thread;
    ImportRunnable importRun;
public void startImport(){
            importRun = new ImportRunnable();
    thread = new Thread(importRun);
    thread.start();
}
    public void stopThread(){
         importRun.setActive(false);
         thread.join();
    }
public class ImportRunnable implements Runnable{
            boolean active;
            public ImportRunnable(){this.active=true;}
    public void run(){
        doImport();
    }
    public void setActive(boolean active){this.active=active;}
    void doImport(){
                while(active){
                    //do import stuff
                }
            }
}

これにより、実行可能なプロセスを安全かつ簡単に開始および停止できます。

于 2013-07-03T18:44:09.373 に答える