0

RealViewSwitcher コントロールがあり、いくつかのコードを使用して、次のように OnScreenSwitchListener の UI を更新しています。

public void onScreenSwitched(int screen) {
//1 update some text view for example 

//2 heavy process 

}

UI の更新は、重い処理が完了するまで表示されません。テキスト ビューを瞬時に更新するにはどうすればよいですか?

4

2 に答える 2

1
private class YouClass extends AsyncTask<Type1, Type2, Type3> {
 protected Long doInBackground(Type1... obj1) {
     //operations to do in background
 }

 protected void onProgressUpdate(Type2... obj2) {
     //operations during the process progress
 }

 protected void onPostExecute(Type3 obj3) {
     //the operations after the completion of your task
 }
}

AsyncTask<>gotoの詳細については

http://developer.android.com/reference/android/os/AsyncTask.html

于 2013-02-09T20:06:05.097 に答える
1

テキスト ビューを瞬時に更新するにはどうすればよいですか?

それ自体はできません。

ただし、ほとんどの場合、「重いプロセス」はAsyncTask. これにより、UI の更新がより迅速に処理されるようになります。

「重いプロセス」自体が UI の更新である場合は、現在のメソッドが返されて Android が最初の一連の UI 更新を処理できるようになるまで、「重いプロセス」を遅らせるように手配する必要があります。これを行うための 1 つのアプローチは、「重いプロセス」の作業を、メソッド available onまたは anyRunnableを使用して実行をスケジュールするに配置することです。post()HandlerView

于 2013-02-09T19:49:25.423 に答える