Closed vestige closed 6 years ago
LTタイマーの仕様
今回のLTタイマーは
4/7は
時間の表示にミリ秒も表示したいです。現在のやり方だと、例えば残り時間が0.99秒でも「00:00」と表示されてしまいます。
あれ?残り時間は常に切り上げだよ。
LT Timerの仕様について(土曜日までに書く)
参考資料?
macとRasPi3のペアリング完了 http://totech.hateblo.jp/entry/2017/01/09/121706
@vestige Panel / LTモードの違いは何ですか?
パネルはタイマーをスケジュールできるモード LTは繰り返し2分タイマーが動きつづけるモード
@vestige 作ってみました。
iOSのauto layoutと違って、画面サイズの変更に追随してテキストのサイズを変更するのが標準機能でできないようです。なので、通知センタを使ってゴリゴリ書こうする予定です。
よねざわさんの絵のresetボタンの上にあるパーツって何ですか?(聞き逃してたらすみません)
Answer:「1分、3分、5分」のプリセット
800x600ぐらいのプロジェクターなのでそんなに大きなウィンドウじゃなくてもよいかもね。 謎パーツはタイマープリセット。ノーマルの時にあったらよいかなぁっと。
http://192.168.2.1/
(例)http://raspberrypi.local/
GET /start
:タイマーをスタートさせるGET /stop
:/start
が既に発行されタイマーが動いている場合はタイマーを一時中止GET /lastspurt
:残り10秒になるので、ラズパイ のボタンの色は変化させるGET /finish
:終了したので音声を鳴らすrestartのところと、fireの中のif文がなんか引っかかるなー タイマーのところ、クロージャでかいてるから、自分がわからないだけかな?
こことここですね。
restartのところ
https://github.com/TochigiRaspberryPICircle/bm/blob/master/ReLT_Timer/hoge/LTTimer.swift#L24-L30
エラー投げるところですかね。viewcontrollerでも対処できますが、残り時間を保持していないというのはLTTimerクラスで問題を抱えてたほうがいいかなと思いました。
fireの中のif文
https://github.com/TochigiRaspberryPICircle/bm/blob/master/ReLT_Timer/hoge/LTTimer.swift#L39-L46
確かに引っかかります。10秒以下になったら一回だけ、ラストスパートのリクエストをラズパイに送りたいのですが何かいい書き方ないですかね。
ViewControllerとLTimerクラスのコミュニケーションは、通知センターとプロトコルを使ったデリゲートパターンのどちらがいいのかも迷いました。iOSをみると後者のほうが一般的だな
https://qiita.com/KikurageChan/items/5b33f95cbec9e0d8a05f
まずはタイマーのコールバックを外にだしてみたら少しわかるのかも。
isRestartってなんで必要なんだっけ?
@vestige
isRestartってなんで必要なんだっけ?
確かにいらないですね。LTTimerのremainingTimeを拾えればそこでrestartか否か判断できます
もともとの考えとしてはスタートボタン1つで、開始とストップからの再開を兼ねるために入れました
アイコンを作った。
ボタンを押したらタイマーをスタートできるようにした。
なかなかかわいらしいボタンねー
今回のイベントでタイマー使うところをまとめてみます
SwifterとSwiftJSONはどうやっていれるのさー? コードだけ確認しておくねー
pod install
まずCustom画面のような複数のタイマーを組合せられるような汎用的な機能・メニュー画面を作って、そこからパネル、LTに特化していくのはどうでしょうか
パネルディスカッション用画面をこんな感じで実装してみました。
時間管理できるようにしました。タイムスケジュールのプリセットを読み込んだあと、既にある行のタイトルと時間は変更可能。
行の追加、削除ができるようにしたい。
ノーマル
パネル
LT(下の画面だと2つ追加済み)
@vestige デモ版を用意しました。お試しをー。 https://github.com/TochigiRaspberryPICircle/bm/releases/tag/0.0.1
updateしたけど、ノーマルモードがスタートしないよ... デモ版は明日(てか、今日)チェックアウトしてみるよ
気になること
ノーマルモードがスタートしないよ...
確認しました。直します。
パネルのは設定したら、ノーマルと同じ画面でうごいて欲しい。これはやるつもりのやつかな?
そうなんですか。スタッフの人とか参加者もどういう流れでやるのか見えるといいのかなと思ってました。
5/2にやること
やりとりが煩雑かもしれないので、ディスカッションおこした。 https://github.com/orgs/TochigiRaspberryPICircle/teams/bm/discussions
こんな感じでどかな?
やり方が2つあると思います
前者のほうでやりたいのですがいいですか
Restart機能は今回やらない Stopボタンを削除する
画面の切り替え方法は木村くんが実装しやすい方でいいですよ。 UI的にはどちらでも構わないですー
複数のタイマーがセットされているときは、"888888"のまま、10秒あけて、次のタイマーを動かす
をやろう
タイマーが複数設定されているときは全体終了の時刻にする →タイトルを設定できるようにする タイマーがひとつのときは表示しない
別に機能として実装しないで、設定画面でtitleを単に空文字列にすれば気がします。
せきさんに作ってもらった画像、入れておきます
いまさらだけど、画面の大きさどうしようね。 800x600ぐらいはあった方がいいような。
レスポンシブにする予定です
初期画面を変更、計測終了時にライオンの画像を表示するようにしました。
今日のメニュー