20172303 20172322 2017-2018-2 暑假做業 結對編程項目-舒爾特方格(增補:計時器的加入與頁面優化)

增補:計時器的加入。

增補計時器的緣由及動機

  • app自己過於簡單,在課上展現事後顯得過於單薄。
  • 學姐提出了一些建議。
  • 想多加分。

添加過程

由於咱們以前在作app的時候就已經想到加入計時器,但因爲當時時間限制與心理準備不充分並未加入計時器功能,可是咱們在想到時就已經查到了相關方法。html

Timer

咱們在網上搜索「andriod計時器」時出現的即是Timer方法。因而,咱們便決定使用Timer方法來實現及時功能。網絡

實踐代碼

  • 首先,咱們須要支持HandlerLeak而且複寫了handleMessage
@SuppressLint("HandlerLeak")
    Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            switch (msg.what) {
                case 1:
                    mlCount++;
                    int tatalSec = 0;
                    int msec = 0;
                    //精確到0.01秒
                    tatalSec = (int) (mlCount / 1000);
                    msec = (int) (mlCount % 1000);//毫秒
                    sec = (tatalSec % 1000);//秒

                    try {
                        time = String.format("%1$02d:%2$03d", sec, msec);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    break;
            }
            super.handleMessage(msg);
        }
    };

咱們也對計時後的時間顯示格式作出了必定的規範。app

  • 以後咱們對比着已有的計時器模版寫下了startTime方法
//開始時間
    private void startTime() {
        task = new TimerTask() {
            @Override
            public void run() {
                if (msg == null) {
                    msg = new Message();
                } else {
                    msg = Message.obtain();
                }
                msg.what = 1;
                handler.sendMessage(msg);
            }
        };
        timer = new Timer(true);
        timer.schedule(task, 0, 1);
    }
  • 最後在Oncreate中加入了startTime方法。

雖然這幾步看起來比較輕鬆,可是這是咱們兩我的花了星期天的整個下午才實現的功能,實現事後咱們都比較開心,而後就出去吃麥當勞啦!ide

其餘值得提一下的地方

  • 咱們優化了界面,看起來沒有以前那麼單調啦!
    post

  • 咱們讓介紹頁面變得不可修改
    優化

基礎實現的博客地址:點擊這裏

相關文章
相關標籤/搜索