当前位置:首页 > 谈天说地

Android实现简易秒表功能

34资源网2022-09-13550

本文实例为大家分享了android实现秒表功能的具体代码,供大家参考,具体内容如下

今天为了给师弟们讲安卓,花了10分钟写了一个简易的秒表app,现贴出代码,供各位刚入门以及还未入门的同学们参考

第一步:布局activity_main.xml:

<relativelayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingbottom="@dimen/activity_vertical_margin"
    android:paddingleft="@dimen/activity_horizontal_margin"
    android:paddingright="@dimen/activity_horizontal_margin"
    android:paddingtop="@dimen/activity_vertical_margin"
    tools:context=".mainactivity" >
 
    <relativelayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerinparent="true" >
 
        <linearlayout
            android:id="@+id/top"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerhorizontal="true"
            android:orientation="horizontal" >
 
            <textview
                android:id="@+id/mint"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="00"
                android:textsize="30dp" />
 
            <textview
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text=":"
                android:textsize="30dp" />
 
            <textview
                android:id="@+id/sec"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="00"
                android:textsize="30dp" />
        </linearlayout>
 
        <linearlayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/top"
            android:layout_centerhorizontal="true"
            android:orientation="horizontal" >
 
            <button
                android:id="@+id/start"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="start" />
 
            <button
                android:id="@+id/reset"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="reset" />
        </linearlayout>
    </relativelayout>
 
</relativelayout>

第二步:实现秒表功能

package com.example.second;
import android.os.bundle;
import android.os.handler;
import android.os.message;
import android.app.activity;
import android.view.menu;
import android.view.view;
import android.view.view.onclicklistener;
import android.widget.button;
import android.widget.textview;
public class mainactivity extends activity {
    private textview mint;
    private textview sec;
    private button start;
    private button reset;
    private long timeusedinsec;
    private boolean isstop = false;
    private handler mhandler = new handler() {
        /*
         * edit by yuanjingchao 2014-08-04 19:10
         */
        @override
        public void handlemessage(message msg) {
            // todo auto-generated method stub
            super.handlemessage(msg);
            switch (msg.what) {
            case 1:
                // 添加更新ui的代码
                if (!isstop) {
                    updateview();
                    mhandler.sendemptymessagedelayed(1, 1000);
                }
                break;
            case 0:
                break;
            }
        }
 
    };
 
    @override
    protected void oncreate(bundle savedinstancestate) {
        super.oncreate(savedinstancestate);
        setcontentview(r.layout.activity_main);
        initviews();
    }
    private void initviews() {
        mint = (textview) findviewbyid(r.id.mint);
        sec = (textview) findviewbyid(r.id.sec);
        reset = (button) findviewbyid(r.id.reset);
        start = (button) findviewbyid(r.id.start);
        reset.setonclicklistener(new onclicklistener() {
            @override
            public void onclick(view arg0) {
                // todo auto-generated method stub
            
                mint.settext("00");
                sec.settext("00");
                start.settext("start");
                timeusedinsec=0;
                isstop=true;
            }
        });
        start.setonclicklistener(new onclicklistener() {
            @override
            public void onclick(view arg0) {
                // todo auto-generated method stub
                mhandler.removemessages(1);
                string aaa=start.gettext().tostring();
                if(aaa.equals("start")){
                    mhandler.sendemptymessage(1);
                    isstop = false;
                    start.settext("pause");
                }else {
                    mhandler.sendemptymessage(0);
                    isstop = true;
                    start.settext("start");
                }
                
            }
        });
    }
    private void updateview() {
        timeusedinsec += 1;
        int minute = (int) (timeusedinsec / 60)%60;
        int second = (int) (timeusedinsec % 60);
        if (minute < 10)
            mint.settext("0" + minute);
        else
            mint.settext("" + minute);
        if (second < 10)
            sec.settext("0" + second);
        else
            sec.settext("" + second);
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

看完文章,还可以扫描下面的二维码下载快手极速版领4元红包

快手极速版二维码

快手极速版新人见面礼

除了扫码领红包之外,大家还可以在快手极速版做签到,看视频,做任务,参与抽奖,邀请好友赚钱)。

邀请两个好友奖最高196元,如下图所示:

快手极速版邀请好友奖励

扫描二维码推送至手机访问。

版权声明:本文由34楼发布,如需转载请注明出处。

本文链接:https://www.34l.com/post/22058.html

分享给朋友:

相关文章

疫情好可怕,据说白宫又有4名工作人员被确诊新冠肺炎

疫情好可怕,据说白宫又有4名工作人员被确诊新冠肺炎

最近看了下国内的疫情,大致还算稳定,每天增长不多,如下图所示是最新国内疫情情况:…

情浓时,海誓山盟;情淡时,形同陌路

情浓时,海誓山盟;情淡时,形同陌路

1、如果一个人影响到了你的情绪,你的焦点应该放在控制自己的情绪上,而不是影响你情绪的人身上。只有这样,才能真正自信起来。…

华盛顿:自己不能胜任的事情,切莫轻易答应别人

华盛顿:自己不能胜任的事情,切莫轻易答应别人

自己不能胜任的事情,切莫轻易答应别人,一旦答应了别人,就必须实践自己的诺言。——华盛顿 这则名言告诉我们什么道理?我们应该怎么做?…

小型电冰箱什么牌子好?现在口碑最好的冰箱推荐

小型电冰箱什么牌子好?现在口碑最好的冰箱推荐

海尔冰箱全球公认的质量很不错的冰箱,海尔冰箱优点是:微霜,制冷效果不错;节能省电,保湿效果不错;海尔冰箱是十大品牌之首,全球销量的第一梯队的佼佼者。海尔冰箱外观十分好看,海尔冰箱款式几乎都很新颖,质量好,制冷情况好,用了一段时间,制冷情况稳…

带货主播成正式工种;AITO汽车来了;小米、英特尔入股张艺谋等创办的VR公司 ;特斯拉推出儿童电动车丨邦早报

带货主播成正式工种;AITO汽车来了;小米、英特尔入股张艺谋等创办的VR公司 ;特斯拉推出儿童电动车丨邦早报

【电子驾驶证12月10日起全国全面推行】据公安部消息,12月10日起,电子驾驶证在全国全面推行。此前,驾驶证电子化已覆盖北京、上海、广州、西安等200个城市,5000多万名驾驶人领取了电子驾驶证,实现手机在线“亮证”。电子驾驶证通过全国“交…

龚文祥真的破产了吗?

龚文祥真的破产了吗?

图源:摄图网 编者按:本文来自微信公众号十里村(ID:shilipxl),作者:村长住在十里村,创业邦经授权转载 各位村民好,我是村长。 号称团队不超过10个人,一年就能赚五千万的微商教父龚文祥破产了!!! 因此还上了各大平台的热搜榜,事…