这是我的第一个问题,如果格式不正确,我深表歉意。我正在使用 java 并试图让计时器在单击按钮时在 while 循环内运行。一旦单击开始按钮,结果应该会导致 .setText 定期更改框中的文本。protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); startBtn = findViewById(R.id.startButton); item = findViewById(R.id.Rule); startBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { while(true) { Timer(); } } });}public void Timer(){ Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { item.setText() } }, 5000);}`问题是当点击开始按钮时,似乎什么也没发生。或者,我也尝试重复定时器调用。虽然这有效,但它只会运行一次计时器调用,然后结束点击功能。protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); startBtn = findViewById(R.id.startButton); item = findViewById(R.id.Rule); startBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Timer(); Timer(); Timer(); Timer(); Timer(); } });}public void Timer(){ Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { item.setText(ruleOut(rulesList)); } }, 5000);}我一直无法找到任何东西或为此解决任何问题,因此非常感谢任何帮助。我确定我会遗漏一些明显的东西。谢谢你。
添加回答
举报
0/150
提交
取消