0
私はタイムドループの横にtextViewのアップデートを作成しようとしています。私はそれがループするたびにinvalidate()しようとしました。これはうまくいくようですが、タイマーの起動時にアプリがクラッシュします。ここでAndroid invalidate()はtextViewを更新していません
はループです:ここでは
private Timer timer;
private TimerTask timerTask = new TimerTask() {
@Override
public void run() {
thangO += 10;
textypoo.setText(Integer.toString(thangO));
textypoo.invalidate();
}
};
public void start() {
if (timer != null) {
return;
}
timer = new Timer();
timer.scheduleAtFixedRate(timerTask, 0, 2000);
}
は、私はいくつかのものを初期化するのonCreateである:ここでは
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
Intent intent = getIntent();
textypoo = (TextView)findViewById(R.id.textmcview);
}
は2のonClickメソッドです。
public void sendthestuff(View view) {
setContentView(R.layout.activity_second);
textypoo = (TextView) findViewById(R.id.textmcview);
thangO++;
message = Integer.toString(thangO);
textypoo.setText(message);
}
public void bazinga(View view) {
start();
}
は、UIスレッドで実行 – Saveen
てみてください私がする?申し訳ありませんが、私はJavaのAndroid側が初めてです。 – moxide
心配しないで、ここにコードを入れて分かります。http://stackoverflow.com/questions/12850143/android-basics-running-code-in-the-ui-threadをタイマーに入れてください。助けてくれてありがとう(: – moxide