Как заставить кнопку возвращать логическое значение? - PullRequest
0 голосов
/ 30 октября 2011

Я пытаюсь создать приложение секундомера, которое при нажатии запуска запускается, а при нажатии кнопки остановки останавливается. Я использую обработчик и запускается с задержкой отправки, но я хочу, чтобы он отправлял сообщения только в том случае, если кнопка «Стоп» не была нажата. Вот как я говорю о реализации того, о чем я говорю.

if(!StopBClicked()){
     handler.postDelayed(r, 1000);
}

Это то, что я имею до сих пор, чтобы сделать это булево.

public boolean StopBClicked() {
    Button StopB = (Button)findViewById(R.id.StopB);
    StopB.setOnClickListener(new View.OnClickListener(){
        return true;
    }
}

Но, как вы можете догадаться, это не работает. Это дает мне ошибку в ")" после OnClickListener (. Я немного новичок, поэтому я буду признателен за пример кода. Спасибо.

Ответы [ 2 ]

2 голосов
/ 30 октября 2011

Просто запустите действие, когда нажата кнопка.

Добавьте это к своему onCreate:

Button StopB = (Button)findViewById(R.id.StopB);
StopB.setOnClickListener(new View.OnClickListener(){
    @Override
    public void onClick(View v){
        handler.postDelayed(r, 1000);
    }
}
0 голосов
/ 30 октября 2011

Не делал ни один Android-разработчик, но я бы предположил, что это синтаксическая ошибка. Предполагая, что это не ошибка копирования, сделанная редактором StackOverflow, вставляющим некоторый код, не должно ли это быть:

private boolean StopBClicked() {
    Button StopB = (Button)findViewById(R.id.StopB);
    StopB.setOnClickListener(new View.OnClickListener(){
        return true;
    });
}
...