По сути, я пытаюсь запустить счетчик секунд и счетчик уровней. Каждые 10 секунд хочу повышать уровень ++.
Но это еще не реализовано, пока я просто пытаюсь отобразить секунды, но получаю исключения времени выполнения и сбой.
В поисках Google я вижу, что это потому, что я пытаюсь обновить пользовательский интерфейс из своего потока, а это запрещено.
Думаю, мне понадобится asyncTask, но я понятия не имею, как это сделать с помощью моей простой маленькой программы. Пожалуйста, помогите или дайте мне несколько альтернатив ...
package com.ryan1;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
public class main extends Activity {
int level = 1;
int seconds_running=0;
TextView the_seconds;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
the_seconds = (TextView) findViewById(R.id.textview_seconds);
Thread thread1 = new Thread(){
public void run(){
try {
sleep(1000); Log.d("RYAN", " RYAN ");
updated_secs();
} catch (Exception e) {
e.printStackTrace();
Log.d("RYAN", " "+e);
}
}
};
thread1.start();
}
public void updated_secs(){
seconds_running++;
the_seconds.setText(" "+seconds_running);
}
}