【问题标题】:Creating a chronometer in Android在 Android 中创建计时器
【发布时间】:2011-12-30 21:05:14
【问题描述】:

我想知道如何在 Android 中实现一个简单的计时器,该计时器带有一个开始和停止按钮,以 HH:MM:SS:MsMs 格式显示数据...我一直在搜索和搜索,我有在谷歌开发者上找到了一些课程,但他们没有给出例子,我迷路了......你能指导我看一个教程/例子吗?我刚开始使用 Android :) 任何帮助将不胜感激。

【问题讨论】:

    标签: android implementation chronometer


    【解决方案1】:

    只需在 XML 或代码中实现 Chronometer 并使用它的 start() 方法启动它并使用它的 stop() 方法停止它。

    更多信息可以在这里找到:http://developer.android.com/reference/android/widget/Chronometer.html

    XML:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <Chronometer
            android:id="@+id/chronometer1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Start" 
            android:onClick="startChronometer"/>
    
        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Stop" 
            android:onClick="stopChronometer"/>
    
    </LinearLayout>
    

    Java:

    public class Main extends FragmentActivity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.test);
        }
    
        public void startChronometer(View view) {
            ((Chronometer) findViewById(R.id.chronometer1)).start();
        }
    
        public void stopChronometer(View view) {
            ((Chronometer) findViewById(R.id.chronometer1)).stop();
        }
    }
    

    您可以在 startChronometer() 方法中添加一些代码来重新启动计数器。

    【讨论】:

    • 我有更多的布局 (XML) 我想将计时器用于...我如何调整这一行“setContentView(R.layout.test);”使其能够接收来自其他布局的呼叫,而不仅仅是来自“测试”布局?
    • 我不知道我的理解是否正确,但如果您不在 Java 中添加 Chronometer,则每个 XML 布局中都需要一个 Chronometer。
    • 好吧,我有一个菜单,它可以将我重定向到五个相同的 XML 之一,其中包含一个计时器和一个 java 文件,java 和 XML 都带有上面的代码......我如何使 java 文件适应服务五个xml?还是我必须为每个 xml 创建一个 java 文件?
    • 如果 XML 始终相同,您可以将它用于每个菜单点。如果 Java 相同,请务必使用相同的 Java。只需使用您的菜单点启动相同的活动。但我不明白这一点!
    • 嗯,XML 现在是相同的,我想稍后相互添加不同的文本...
    猜你喜欢
    • 1970-01-01
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-21
    • 1970-01-01
    • 2023-03-29
    相关资源
    最近更新 更多