我没有找到多个 TextViews
的解决方案。我想在 Button
单击时每秒或 1/2 秒更改文本:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_2);
Show = (TextView) findViewById(R.id.Show);
Start = (Button) findViewById(R.id.Start);
Start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Show.setTextColor(android.graphics.Color.BLUE);
SystemClock.sleep(1000);
Show.setText("Example Text 1");
SystemClock.sleep(1000);
Show.setText("Example Text 2");
SystemClock.sleep(300);
Show.setText("Example Text 3");
SystemClock.sleep(800);
Show.setText("Example Text 4");
SystemClock.sleep(5000);
Show.setText("Example Text 5");
SystemClock.sleep(1000);
Show.setText("Example Text 6");
SystemClock.sleep(2000);
Show.setText("Example Text 7");
SystemClock.sleep(100);
}
});
}
但这行不通。如果我单击 Button
则不会发生任何事情,随后 TextView
显示示例文本 7。
最佳答案
此代码从 5 倒数到 1(显示该值),然后写入“GO!”
final TextView txtCount = (TextView) findViewById(R.id.txtCount);
final int secs = 5;
new CountDownTimer((secs + 1) * 1000, 1000) // Wait 5 secs, tick every 1 sec
{
@Override
public final void onTick(final long millisUntilFinished)
{
txtCount.setText("" + (int) (millisUntilFinished * .001f));
}
@Override
public final void onFinish()
{
txtCount.setText("GO!");
}
}.start();
它假设您当前的 ContentView 布局中有一个名为 txtCount 的 TextView
关于java - 每秒更改 TextView 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31458907/