我试图在屏幕上显示秒数,换句话说是浮动,但我只是知道这是不可能的:
font.draw(batch,float,x,y);
另外,你如何计算第二,我不想在屏幕上打印这样的东西:1.2秒,3.2秒。这就是我所做的,它给了我很多小数位。
seconds+=1*deltaTime;
答案 0 :(得分:1)
只需将您的浮动转换为String:
Float.toString(seconds)
为你的"秒"变量只存储游戏开始的时间
long startTime = System.currentTimeMillis();
然后显示如下
font.draw(batch,Float.toString((Float)((System.currentTimeMillis() -startTime)/1000f),x,y);
你应该每帧都调用它,否则在绘制新帧时它将被删除。
答案 1 :(得分:0)
要将float
格式化为具有一定小数位数的String
,您可以使用DecimalFormat类。
float x = 2.3456;
DecimalFormat df = new DecimalFormat("0.0");
String formatted = df.format(x);
font.draw(batch, formatted, x, y);
您可能希望测试当您通过libGDX导出为JavaScript和Android时,这是有效的,但这是标准的Java方法。