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

Visual Studio でアイコンが編集できない!?

Visual Studio 2019 Community で、Icon を編集しようとしたら、編集用のボタンがグレーアウトされていて、編集できない!?

と思ったら、32ビット画像が編集できないのは、by Design (仕様)だそうです。Visual Studio のIcon エディタを使用するには、8ビットカラーであれば、次の通り。

WPFでメニューが左に表示される問題

ある日、突然WPFのメニュが左側に出るようになりました。

解決策は、次にあるように  HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows の MenuDropAlignmentを0に変更し、再ログインすることで解決しました。どこで書き換わってしまったかは謎です。

Why Menu Items Box is aligned at left when created in XAML & WPF [duplicate]

Visual Studio 2019 でインストーラを設定

Visual Studio 2019 Community では、インストーラがない。

Microsoft Visual Studio Installer Projects から、インストーラをインストールする。インストーラパッケージを作ろうとすると、次のエラーが出る。

0: Watson 1: 1304 2: STreamSupportFiles 3:streamBinaryToDisk 4:5 5:e:\sql10_main_t\sql\setup\darmwin\sqlcastub\streamca.cpp 6:238 7:sqlcastub.dll 8:sqlrun.msi

これに関しては、 https://social.msdn.microsoft.com/Forums にあるように、cmd ウィンドウ(管理者モード)で次のコマンドを実行することにより解決した。

regsvr32.exe /u “C:\Program Files (x86)\Common Files\microsoft shared\MSI Tools\mergemod.dll”
regsvr32.exe “C:\Program Files (x86)\Common Files\microsoft shared\MSI Tools\mergemod.dll”