android - 想要在游戏的主视图中显示时间?

标签 android graphics view textview

我目前正在为 Android 开发一个简单的游戏,其中主要 Action 发生在我的类 GameView 上,它只是 View 的扩展。

我想在 GameView 的左上角添加一些显示时间的文本,想知道实现它的最佳方法吗?

我用傻瓜代码显示

public void onTick(long millisUntilFinished) { TIME=(int) (millisUntilFinished/1000);

        timeCanvas.drawText("time= "+TIME, 30, 30, timePaint);

            invalidate();

    }

但是无法正常显示。它覆盖每个计数增量。 还有其他显示时间的方法吗?

我还使用了 TextView 。但无法在此自定义 viewGive 解决方案或要显示的任何示例代码中将时间设置为文本....

最佳答案

This文章对你有帮助

private Runnable mUpdateTimeTask = new Runnable() {
public void run() {
   final long start = mStartTime;
   long millis = SystemClock.uptimeMillis() - start;
   int seconds = (int) (millis / 1000);
   int minutes = seconds / 60;
   seconds     = seconds % 60;

   if (seconds < 10) {
       mTimeLabel.setText("" + minutes + ":0" + seconds);
   } else {
       mTimeLabel.setText("" + minutes + ":" + seconds);            
   }

   mHandler.postAtTime(this,
           start + (((minutes * 60) + seconds + 1) * 1000));

} };

开始

mHandler.removeCallbacks(mUpdateTimeTask);
mHandler.postDelayed(mUpdateTimeTask, 100);

停止

mHandler.removeCallbacks(mUpdateTimeTask);

关于android - 想要在游戏的主视图中显示时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5201944/

相关文章:

c# - 8bpp 转换为 24bpp 时图像发生偏移

math - 透视投影,4分

Android viewpager ......如何获取 View ?

安卓图形用户界面 : trying to draw on a canvas

java - 以编程方式设置 View 的重力

java - 有意传递很长时间,总是出错

android - TableRow 中的 TextView 对齐方式

android - 在 arm64 上安装构建工具不起作用

android - 我们可以将触摸板或触控板值模拟到 android 平板电脑吗?

javascript - 在浏览器中查看时,R 中的 Dygraphs 不显示颜色