0
我是一个在Android的敏锐的新手位!我有一段代码用于计时器,我想在我的应用程序中使用它,但是它在点击按钮时有效,我希望它在我打开它的活动时工作。我尝试了很多解决方案,但无法运行。我真的很感激任何帮助,我试着把if语句放进去,我尝试过使用onStart,并且把它放在OnCreate中,没有任何快乐。我能得到的最接近的是,它只是以“Time Up!”开头。在该领域。开始活动时我的倒计时时钟
import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity
{
Button buttonStartTime;
TextView textViewShowTime;
CountDownTimer countDownTimer;
long totalTimeCountInMilliseconds;
long timeBlinkInMilliseconds;
boolean blink;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getReferenceOfViews();
setActionListeners();
totalTimeCountInMilliseconds = 60 * 1000;
timeBlinkInMilliseconds = 30 * 1000;
}
private void setActionListeners() {
buttonStartTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
textViewShowTime.setTextAppearance(getApplicationContext(), R.style.normalText);
countDownTimer = new CountDownTimer(totalTimeCountInMilliseconds, 500) {
@Override
public void onTick(long leftTimeInMilliseconds) {
long seconds = leftTimeInMilliseconds/1000;
if (leftTimeInMilliseconds < timeBlinkInMilliseconds) {
textViewShowTime.setTextAppearance(getApplicationContext(), R.style.blinkText);
if (blink) {
textViewShowTime.setVisibility(View.VISIBLE);
} else {
textViewShowTime.setVisibility(View.INVISIBLE);
}
blink = !blink;
}
textViewShowTime.setText(String.format("%02d", seconds/60) + ":" + String.format("%02d", seconds % 60));
}
@Override
public void onFinish()
textViewShowTime.setText("Time up!");
textViewShowTime.setVisibility(View.VISIBLE);
}
}.start();
}
}
);
}
private void getReferenceOfViews() {
buttonStartTime = (Button) findViewById(R.id.btnStartTime);
textViewShowTime = (TextView) findViewById(R.id.tvTimeCount);
}
}
你有没有尝试在onCreate()的底部分配countDownTimer? – Chris
您可以编程模拟* onResume()*中的按钮单击。 –
我想彻底删除按钮元素,并让计时器开始创建活动。是否可以在没有点击或按钮的情况下修改代码? – James