2016-03-23 19 views
0

ある間隔でデータを収集する必要があります。ここでは、データ収集はカウント整数でシミュレートされています。私はその整数を集めるように見えることはできません。ボタンがクリックされた後にコレクションを開始し、別のボタンをクリックすると終了する必要があります。何か案は?Androidでタイマーを利用するにはどうすればよいですか?

package com.example.test.gothedistance; 

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import android.widget.TextView; 

import java.util.Timer; 
import java.util.TimerTask; 

public class MainActivity extends AppCompatActivity { 

Button start, stop; 
TextView sumText; 
int count; 
Timer t; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    start = (Button) findViewById(R.id.startButton); 
    stop = (Button) findViewById((R.id.stopButton)); 
    sumText = (TextView) findViewById(R.id.sumTV); 
    t = new Timer(); 
    count = 0; 




    t.scheduleAtFixedRate(
      new TimerTask() 
      { 
       public void run() 
       { 
        count++; 

       } 
      },0,2000); 

    stop.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      t.cancel(); 
      sumText.setText(count); 
     } 
    }); 
} 
} 
+0

このようなものを探していると思います。http://android-er.blogspot.com.es/2013/12/example-of- using-timer-and-timertask-on.htmlが役立つことを願っています! –

+1

私は、TimerはAndroidで通常は使用されていないと主張しています。通常、Timerはアラームまたはハンドラへの遅延メッセージです。 –

答えて

1

問題がTextView.setText(int resid)を使用してラインsumText.setText(count)、と思われます。これは、countの値を表示するのではなく、countのIDを探していることを意味します。この値を整数に変換する必要があります。

sumText.setText(Integer.toString(count)) 
+0

ああ、それは恥ずかしいです(私はその問題を自動的に処理していた言語を使用しています:b) –

関連する問題