Так что прошло какое-то время с тех пор, как я попытался запрограммировать Android. Теперь у меня есть лучшее понимание java, чем у меня в прошлом, но мой вопрос заключается в том, как я могу ограничить количество нажатий на кнопку. Контекст этого заключается в том, что у меня есть таймер, таймер меняется каждый раз, когда старый истек. Таким образом, я создал массив времен, например {3,4,7,1,3}, но как только он заканчивается, я не хочу, чтобы тост всплывал. Я знаю, как сделать часть тоста, и поэтому прямо сейчас у меня есть CountDownTimer (Array [i], 0). и в методе onFinish, который предоставляется, я индексирую i еще раз. Но я не хочу вызывать этот метод, если i> Array []. Lenghth. Когда я пытаюсь добавить только простой условный оператор, подобный этому, прежде чем я создам новый CountDownTimer, я получаю сообщение об ошибке, которое подразумевает надлежащее закрытие моих методов и условных обозначений. Ниже приводится то, что у меня есть. Спасибо, ребята, заранее!установить разное время android таймер обратного отсчета
package com.example.countdown;
import java.util.ArrayList;
import android.R;
import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
private int[] Times= new int[];
Times={4,5,3,2,6}
private int index=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_item);
Button b1 = (Button) findViewById(R.id.button1);
b1.setOnClickListener(new OnClickListener(){
if(index<Times.size()){
public void onClick(View v){
CountDownTimer timer = new CountDownTimer(
Times[i]), 0) {
TextView textview =(TextView) findViewById(com.example.countdowntest.R.id.textView);
public void onTick(long millisUntilFinished) {textview.setText("seconds remaining: "
+ millisUntilFinished/1000);
}
public void onFinish() {
textview.setText("done!");
index++;
}
}.start();
}
});
}
}
}
Это работает! Спасибо, но по какой-то причине я не могу открыть приложение на своем AVD. Будет ли это иметь какое-то отношение к коду, logcat говорит, что в потоке активности произошла ошибка runTime; и не было никакой ошибки при установке. Если у вас есть ключ, который бы помог, если бы вы уже немного помогли мне! Спасибо – user1241388
Вы должны задать другой вопрос для этого или изменить этот. Вы можете принять этот ответ, если это поможет. – Apoorv