0

3秒間隔でスレッドが必要です(httppostを実行し、回答xmlを解析し、リストビューを更新して、解析されたxmlからの変更を設定します)

私はすでにこのコードを試しました

タイマー timer = new Timer(); timer.scheduleAtFixedRate(

    new TimerTask() {

        public void run() {

            try {

                httpPostList(url);
                saxParseList();
                                    list.invalidateViews();

                Thread.sleep(1000);

            } catch (Exception ie) {

            }

        }

    }, 1000, 1000 * 30);
4

3 に答える 3

1

AsyncTaskを含むサービスを作成していただければ幸いです。非同期タスクは、通常のJavaタスクのAndroidの同義語であり、ドキュメントはここにあります:http: //developer.android.com/reference/android/os/AsyncTask.html

サービスはバックグラウンドプロセスです。次のドキュメントを参照してください:http: //developer.android.com/reference/android/app/Service.html

于 2012-09-21T06:49:45.517 に答える
0

ハンドラーを使用してみてください:

 Handler handler;

 @Override
 public void onCreate(Bundle savedInstanceState) {
     // ...
     handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            updateUI();
        }
    };

    Thread thread = new Thread() {
        @Override
        public void run() {
            while(true) {
                Message msg = new Message();
                handler.sendMessage(msg);
                try {
                    sleep(3*1000); // 3 seconds
                } catch (InterruptedException e) {
                }
            }                       
        }
    };
    thread.start();
 }

 private synchronized void updateUI() {
     // ...
 }
于 2012-09-21T06:55:49.113 に答える
0

最後に「非同期タスク」を使って作りました。

于 2012-10-29T10:42:20.737 に答える