Swift

MapKitとCoreLocationで現在地の地図を表示する

Xcode 9.2 / Swift 4.0.3 MapKit 地図を表示する CoreLocation 現在地を取得 MapKit + CoreLocation 現在地の地図を拡大して表示する 地図上の現在地にピンをつける 現在地情報はシミュレーターのデフォルト値を使用しています。 MapKit 地図を表示する impo…

try! Swift 2018 Tokyoに参加しました | Day 1

www.tryswift.co try! Swift 2018 Tokyoに参加したので各セッションのスライドなどをまとめます。 2016, 2017に引き続き今年もniwatakoさんが聞き起こしをしてくださってるので細かいことはそちらを参照するといいと思います。 niwatako.hatenablog.jp 裏 Sw…

macOS appのCloudKitでカスタムコンテナを使う時に気をつけること

環境:Xcode 8.3.3 / Swift 3.1 追記 デフォルトコンテナとカスタムコンテナが一致している場合はCKContainer.default()が使えて、 一致していない場合はコンテナ名を指定する必要がある、、、ということでした。 問題 macOS appでCloudKitを使う際、Capabil…

NSOutlineViewのNSTableCellViewを編集状態にする方法

View basedなNSOutlineViewでダブルクリックされたセルを編集状態にする方法です。 NSOutlineViewを継承してfunc mouseDown(with event: NSEvent)を オーバーライドする必要があります。 class MyOutlineView: NSOutlineView { override func mouseDown(with…

システムアイコンのNSImageを作る方法

Finderで表示されるフォルダーのアイコンなどを作る方法。 let folderIcon: NSImage = NSWorkspace.shared().icon(forFileType: NSFileTypeForHFSTypeCode(OSType(kGenericFolderIcon))) kGenericFolderIconを変更すれば色々なアイコンを取得できます。 元と…

macOS app FullScreen時にToolbarを隠す

画像のようなToolbarを持つアプリをFullScreenにした時に Toolbarを隠すにはNSWindowDelegateを設定します。 // NSWindowDelegateを設定 class WindowController: NSWindowController { override func windowDidLoad() { super.windowDidLoad() window?.dele…

指定したURLをFinderで開く

コンテキストメニューでよくみかけるShow in Finderを実装する方法です。 let url: URL! = URL(string: fileOrDirectoryPath) NSWorkspace.shared().activateFileViewerSelecting([url]) ディレクトリを指定した場合はopenでも開けますが、 ファイルを指定し…