Swift でアナログクロックを作ってみた

.NET/C# からすると、全体の設計が違っているので、とても戸惑いました。最初は、UIViewに直接描画するのかと思いましたが、秒、分、時それぞれごとにCAShapeLayer に時計の針を描画して、レイヤーの原点を translateしてセンタリングして、さらに時間に合わせて rotate し、で重ね合わせる方法が良さそうです。秒針をスムースに動かすのであれば、Animation を適用すればOK。1

Swift でのタイマー

Timer

objcパターン

新しいパターン1

新しいパターン2

インターバルの単位は秒。0を指定した場合は、0.1mSec。

タイマーの停止:同一スレッド内から、Timer.invalidate()を呼び、RunLoopから削除する。

Windows で Mac のキーボード、マウスを使うときのmemo

ダウンロード – Boot Camp サポートソフトウェア 5.1.5769 からドライバーをダウンロードする。

次のドライバーをダウンロード。

AppleKeyboardInstaller64.exe

AppleWirelessMouse64.exe

BlueTooth で接続する。この時、いったんマウス、キーボードの電源をオフにしてから、再接続する。

mouseのホイールが逆なので、次を参考に逆にする。

Boot Camp上のWindows – スクロールをナチュラル(逆)方向に変更

SKEmitterNode

File -> New -> Fileから、SpriteKit Particle File を追加する。

パラメータを調整する。

CMMotionManager でモーションを取得

デバイスの傾きをCMMotionManagerで取得すれば、水準器みたいなことができる。

Swift のSpriteKitで Collisions, Bitmasks, Physics