KotlinとSwiftでお馴染みのアナログ時計を作る
こんにちは。川上です。
Kotlinでのアナログ時計は、時計針の回転処理がイマイチで変なままなのです。
逃避的に棚置き後回しでした。
で、Swift版のアナログ時計は、とりあえず、「Pi,Pi,Pi,Poo・・・」と日付と曜日の表示の実装できたので、一旦、オワリです。
処理は、
・吹き出しで「Pi,Pi,Pi,Poo・・・」(音無し)
・背景Image画の切り替え
・日付と曜日の表示
でした。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | // MARK: == JustClock_non let imgNon_1 = UIImage(named:"non_1.png")! let imgNon_2 = UIImage(named:"non_2.png")! let imgNon_3 = UIImage(named:"non_3.png")! let imgNon_4 = UIImage(named:"non_4.png")! let imgNon_5 = UIImage(named:"non_5.png")! var jsutCnt = 0 var justTimer: Timer! var ovrBallowView :BalloonView! //バルーン用View var lblPi: UILabel! // MARK: --- アナログ時計Timer時の各針表示更新 func startTimeClock(_ jstOn :Bool = false) { // -- 現在時間の取得 let datetpl = TotnDate.convertNSDateToYMDHMS(date: Date() as NSDate) ・・・ if jstOn == true { // MARK: --- ジャストClock Image Update justClock_Non(min,sec) } // MARK: --- ジャストClock Image Update func justClock_Non(_ min:Int,_ sec:Int) { // if min == 59 && sec == 54 //1時毎1回指定 if sec == 54 //1分毎1回指定 { print(" --- On -- justClock_Non --") if jsutCnt == 0 { justTimer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(ViewController.justHourUpdate), userInfo: nil, repeats: true) } } } // MARK: --- Timerスケジュール Just Houre Update @objc func justHourUpdate() { print("---- 1. jsutCnt = \(jsutCnt)") let imgs:[UIImage] = [imgNon_1,imgNon_2,imgNon_1,imgNon_2,imgNon_1,imgNon_2, imgNon_3,imgNon_3,imgNon_3,imgNon_5] baseImageVw.image = imgs[jsutCnt] jsutCnt += 1 // --- Pi,Pi ,Pooの表示OnOff if jsutCnt >= 7 { ovrBallowView.isHidden = false } else { ovrBallowView.isHidden = jsutCnt % 2 == 1 ? false : true } lblPi.text = jsutCnt >= 7 ? "Poo" :"Pi" if jsutCnt == imgs.count { baseImageVw.image = baseImage self.justTimer.invalidate() //Timer中止 jsutCnt = 0 print("---- 2. jsutCnt = \(jsutCnt)") ovrBallowView.isHidden = true } } |
次から、Kotlinからの始末から。。かな。
ではでは。