我开发了一个android studio应用程序,问题是天文钟不能在所有设备上正常工作,我也遇到了三星s10和s8以及中兴通讯的问题。
我尝试了这两种创建计时器的方式
cronometro = (Chronometer) findViewById(R.id.cronometro); // this one works in some devices
cronometro = new Chronometer(this); // this one dosen´t work
cronometro = (Chronometer) findViewById(R.id.cronometro);
cronometroPoomsae = new Chronometer(this);//(Chronometer) findViewById(R.id.cronometroPoomsae);
cronometro.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener()
{
@Override
public void onChronometerTick(Chronometer chronometer)
{
//long restante = totalTiempoRound;
long elapsedTime = kerougi.totalTiempoRound - kerougi.tiempoTrancurrido - (SystemClock.elapsedRealtime() - chronometer.getBase());
if(elapsedTime>0){
String hms = String.format("%02d:%02d",
TimeUnit.MILLISECONDS.toMinutes(elapsedTime) % TimeUnit.HOURS.toMinutes(1),
TimeUnit.MILLISECONDS.toSeconds(elapsedTime) % TimeUnit.MINUTES.toSeconds(1));
tiempoRestante.setText(hms);
}
else{
cronometro.stop();
kerougi.tiempoTrancurrido = 0;
if(kerougi.numeroRound == kerougi.vNumeroRounds){
if(kerougi.vRoundDesempate == 1){
kerougi.enRoundDesempate = true;
crearDialog("Entretiempo","Se encuentra en descanso reglamentario.Para seguir pulse botón continuar.",1);
}
else{
String ganador = "EMPATE";
if (kerougi.puntajeAzul>kerougi.puntajeRojo) ganador = "CHUNG";
else if (kerougi.puntajeRojo>kerougi.puntajeAzul) ganador = "HONG";
crearDialog("Resultado","El combate ha acabado, el ganador ha sido: " + ganador,3);
}
}
else{
crearDialog("Entretiempo","Se encuentra en descanso reglamentario.Para seguir pulse botón continuar.",1);
}
}
}
});
我找不到错误,我在网上看了,一切看起来都一样