Java 如何使程序读取秒表,然后在时间到达该秒时在另一个文本视图框中打印语句
我想做一个秒表。当我的秒表达到1分钟时,我想让它打印对账单,我怎样才能让它这样做 我正在使用android studio(java),下面是我的一些代码:Java 如何使程序读取秒表,然后在时间到达该秒时在另一个文本视图框中打印语句,java,android,if-statement,timer,Java,Android,If Statement,Timer,我想做一个秒表。当我的秒表达到1分钟时,我想让它打印对账单,我怎样才能让它这样做 我正在使用android studio(java),下面是我的一些代码: Button btnStart,btnPause,btnLap; TextView txtTimer; Handler customHandler = new Handler(); LinearLayout container; TextView lt; long startTime=0L,timeinMilliseconds=0L,ti
Button btnStart,btnPause,btnLap;
TextView txtTimer;
Handler customHandler = new Handler();
LinearLayout container;
TextView lt;
long startTime=0L,timeinMilliseconds=0L,timeSwapBuff=0L,updateTime=0L;
Runnable updateTimerThread = new Runnable() {
@Override
public void run() {
timeinMilliseconds = SystemClock.uptimeMillis() -startTime;
updateTime = timeSwapBuff+timeinMilliseconds;
int secs=(int) (updateTime/1000);
int mins=secs/60;
secs%=60;
int milliseconds=(int) (updateTime%1000);
String s = "" + mins + ":" + String.format("%02d",secs) + ":" + String.format("%03d",milliseconds);
txtTimer.setText (s);
customHandler.postDelayed(this,0);
}
};
如果您只想在X分钟后设置text,只需创建如下方法:
private void printText(int minutes) {
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//do you setText here
}
}, minutes * 1000);
}
然后像这样使用它:
printText(1);
更新:
这正是你要找的
它扩展了TextView
,因此只需将计时器TextView替换为Chronometer
mChronometer = findViewById(R.id.chronometer2);
mChronometer.setBase(SystemClock.elapsedRealtime());
mChronometer.start();
mChronometer.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() {
@Override
public void onChronometerTick(Chronometer chronometer) {
long elapsedMillis = SystemClock.elapsedRealtime() - mChronometer.getBase();
int secs = (int) (elapsedMillis/1000);
int mins = secs/60;
if (mins == 1) {
mChronometer.stop();
anotherTextVeiw.setText("the 1 minute mark has passed");
}
}
});
使用这种方法,您不必处理
处理程序
和可运行
,我想在另一个新的textview上打印它box@TaimurShaikh你说印刷是什么意思?您的意思是更改文本视图的文本吗?您可以通过txtTimer.setText(myText)设置TextView
如果要创建新的文本视图
,则需要以编程方式创建并将其添加到视图中有两个文本视图框,一个是我的秒表,另一个只是空白框,当我的秒表计时1分钟时,我希望另一个文本视图框打印一条语句,例如,当我的秒表计时1分钟时,我希望另一个文本视图显示“1分钟标记已过”