- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个 View ,我想在上面添加一个计时器。然后,在绘制时我想显示当前时间。这是我的做法:
public class MyView extends View {
private Chronometer chrono;
private long elapsedTime=0;
private String currentTime="00:00:00";
public MyView(Context context) {
super(context);
// TODO Auto-generated constructor stub
init(context);
}
private void init(Context ctx){
chrono= new Chronometer(ctx);
chrono.setText("Time: 00:00:00");
chrono.setOnChronometerTickListener(new OnChronometerTickListener()
{
public void onChronometerTick(Chronometer arg0) {
String HH =((elapsedTime / 3600) < 10 ? "0" : "") + (elapsedTime / 3600);
String MM =((elapsedTime / 60) < 10 ? "0" : "") + (elapsedTime / 60);
String SS =((elapsedTime % 60) < 10 ? "0" : "") + (elapsedTime % 60);
String currentTime = HH+":"+MM+":"+SS;
elapsedTime = (SystemClock.elapsedRealtime() - arg0.getBase()) / 1000;
arg0.setText(currentTime);
}
}
);
}
chrono.setBase(SystemClock.elapsedRealtime());
chrono.start();
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawText(currentTime, someWidth , someHeight, somePaint);
}
初始文本 00:00:00 被绘制,但它没有改变。我一定做错了什么。有什么想法吗?
最佳答案
您创建了一个局部变量 String currentTime 并且您正在写入该变量而不是您的全局变量。
关于Android Chronometer 无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3811005/
我想扩展 Chronometer 类并添加我的代码。 我怎样才能做到呢?我尝试过,但无法使用 View 字段获取 Chronometer 构造函数。我得到一个异常,很明显: ... android.v
我正在编写一个基于 android.widget.Chronometer 的简单国际象棋时钟应用程序。我将它与 setCountDown(true) 标志一起使用,所有逻辑都运行良好。每个 Chron
我有一个应用程序在其主要 Activity 中包含计时码表。 Chronometer 用作计时器。一旦设备的屏幕关闭,这个定时器应该继续运行。我注意到,一旦计时器开始运行并且我将屏幕关闭较长时间,然后
我开发了自己的 Chronometer 实现。我做了以下操作: 创建一个服务 (CronoService),它使用执行线程的 Runnable 对象。 Runnable 将每 0.1 秒循环一次。 将
我有一个应用程序,我在其中向用户显示他正在做的事情的计时器。每当 Activity 进入后台(通过主页按钮或返回)时,我都会保存该时间(以秒为单位),当 Activity 恢复时,我想继续从同一时间开
我正在尝试使用 Chronometer 在我的 Android 应用程序中创建一个恢复按钮。到目前为止,我有 resume 方法的代码 fragment : private long pauseRes
我创建了一个应用程序,它有一个切换按钮来启动和停止计时器,例如秒表。当您第一次按下切换按钮(执行 .start())时,计时器将开始计时,当您再次按下按钮(执行 .stop())时,计时器出现在屏幕上
我有一个 View ,我想在上面添加一个计时器。然后,在绘制时我想显示当前时间。这是我的做法: public class MyView extends View { private C
在Android的SDK中,为我们提供了一个计时器,这个计时器称为Chronometer,我们可以成它为Android的一个组件,同时它也具备自己独有的方法。下面我们举例介绍下这个计时器的使用以及常
我正在尝试在我的白噪音应用程序中实现计时器。 应用程序有 4 个按钮可设置不同的曲调,以及 4 个功能按钮:播放/暂停、停止、一小时和三小时。最后两个正在倒计时模式下运行。 private Chron
我遇到了这个奇怪的问题,它困扰着我。我不明白为什么我在 MainActivity 中初始化计时器时会得到这个 NullPointerException。如果我在 SecondActivity 中初始化
我一直在玩弄 Android Studio,我正在尝试使用 Chronometer 小部件实现一个简单的计时器。首先我尝试了这段代码: import android.os.Bundle; import
我在一个 Activity 中有两个计时器。First Chronometer 是耗时,Second Chronometer 是间隔时间。 例如:-我们选择了 5 分钟耗时和 30 秒间隔时间,现在我
我有一个计时器,从用户遇到该 Activity 时开始计时 我目前正在使用 onCreate 期间设置的 Chronometer(最初仅在满足某些条件时才启动)。但我需要计时器继续向上计数,直到应用程
android 中的计时器如何检查计时器是否正在运行或停止?如果开始然后我想停止它,如果不运行然后启动计时器。 最佳答案 您可以使用 bool 变量来检查这一点。当您启动计时器时,您将 bool 变量
我有这个秒表需要在 30、45 和 60 秒后播放声音。 这是我的代码: @Override protected void onCreate(Bundle savedInstanceState) {
所以我的应用有 1 个 Activity 和 4 个 fragment ,其中一个有 Chronometer 来显示经过了多少时间。 它工作正常,但我有一个问题,每次我移动到另一个 fragment
我发现如果我在 setBase(SystemClock.elapsedRealtime()) 之后立即调用 start() 它将从 00:00 开始计数(这很好),见下文: startButton.s
我试图在 10 秒时停止我的 android 计时器,但我似乎无法让它工作。 我的代码如下,任何人都可以指出我正确的方向。 谢谢。 if(chronorun == false){ c
我以编程方式创建了计时器。但我不知道如何增加计时器文本的大小。以下是我的代码。我已将初始值设置为 00:00,但这个文本看起来很小,我想增加它的大小。请帮忙。 protected void onCre
我是一名优秀的程序员,十分优秀!