Я собираюсь создать секундомер, и у меня возникли проблемы. Мой код выглядит так:
1 Для кнопки "Пуск":
start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// some code
mHandler.removeCallbacks(mUpdateTimeTask);
mHandler.postDelayed(mUpdateTimeTask, 1);
start.setText("Lap");
}});
2 Для исполняемых:
public Runnable mUpdateTimeTask = новый Runnable() {
public void run() {
EditText licznik = (EditText)findViewById(R.id.editText1);
// some code
licznik.setText(time+"");
mHandler.postDelayed(this, 1);
}
};
Мой секундомер отлично работает для: Старт, Стоп.
Но я не могу создать внутри действие onclicklistener кнопки сброса: licznik.setText("");
, потому что licznik инициируется внутри mUpdateTimeTask, я также не могу переместить licznik за пределы mUpdateTimeTask, потому что тогда он не работает.
Кроме того, как вы заметили, моя кнопка запуска после щелчка изменится на круг, и круг должен фактически получить время от запуска. Я понятия не имею, как это сделать, потому что runnable является динамическим.
У кого-нибудь есть решение?
mUpdateTimeTask
неанонимную реализациюRunnable
с конструктором, который принимаетlicznik
в качестве параметра? Таким образом, вы сможете разделитьlicznik
между слушателем иmUpdateTimeTask
... - person Victor Sorokin   schedule 14.03.2013mUpdateTimeTask implements Runnable
и почему он не справляется с вашей задачей? - person Victor Sorokin   schedule 15.03.2013