ikeh1024のブログ

ZennやQiitaに書くにはちょっと小粒なネタをこちらに書いています

Swift

SwiftのプロジェクトからC++の静的ライブラリを利用する

概要 Swiftのプロジェクトに対して、C++で書かれたライブラリのプロジェクトを追加して、アプリのビルド時にライブラリもビルドされるようにしたい 参考 How can I use an .a static library in swift? SwiftとObjective-C連携 with Xcode 手順 下記の通りプ…

Xcodeで特定のファイルのWarningを非表示にする

概要 すぐには変更できないObjective-Cのファイルがあり、暫定処理としてWarningを非表示にしたい 下記の通り、Compiler Flagsに-wを渡せば良さそう ただし.hはこれに含まれずどうするか分からず仕舞い How to suppress header file warnings from an Xcode …

ビルドエラーがXcodeで表示されないときの一時的な対処方法

概要 Xcode not displaying compile errors 下記をUncheck.

Peripheryの導入とHomebrew・Sandboxのエラー対応

概要 以下の通りに進める。 【Swift】Peripheryで不要なコードを見つけてビルド時間を短縮する その上で下記のエラーが出たので対応を行った。 エラー対応 periphery: command not found 下記のエラーが発生。 /Users/ikeh/Library/Developer/Xcode/DerivedD…

UserDefaultsのplistの場所とリセット

Screenshots Code struct ContentView: View { // MARK: - Properties var library: URL? { FileManager.default.urls(for: .libraryDirectory, in: .userDomainMask).first } var preferences: URL? { library?.appendingPathComponent("Preferences") } va…

C言語のデータ型とSwiftのデータ型の対応表

GitHub Copilotで書き出したときのメモ (間違いあったらご指摘ください) C言語のデータ型 Swiftのデータ型 char Int8 unsigned char UInt8 short Int16 unsigned short UInt16 int Int32 unsigned int UInt32 long Int unsigned long UInt long long Int64…

SwiftでMacのシリアル番号とハードウェアUUIDを取得

概要 Swiftで下記に記載されているシリアル番号とハードウェアUUIDを取得する 実装 func loadIOPlatformExpertDevice(ioService: String, propertyKey: String) -> String? { let service = IOServiceGetMatchingService(kIOMainPortDefault, IOServiceMatch…

macOSアプリからPythonを呼び出そうと試みたときのメモ

結論 今のところ、ピュアなPythonは組み込んで使えそう 3rd partyのライブラリを含める方法は分からずじまい 参考 Embedding a Python interpreter inside a MacOS / iOS app, and publishing to the App Store successfully. 一番まとまっている python-std…

macOSのUI Element Colorsのプレビュー

追記(2023-09-04) 下記の通り昇華させてみた。 github.com 概要 定義済みNSColorのイメージを見たかったので作成。 今回スクショの手作業が多かったので、次回はもっと効率化する。 ダークモードも追加したい。 参考 UI Element Colors Gist NSColorのプレビ…

Swiftで適当なエラーを使いたいときの実装

参考 struct MessageError: Swift.Error & CustomStringConvertible { var description: String}— おもちメタル (@omochimetaru) 2022年11月5日 struct MessageError: Swift.Error & CustomStringConvertible { var description: String } 使用例 実装例 let…

SwiftPMの自動アップデート

DependabotはSwiftPMに非対応 GitHubは同様のDependabotというサービスを買収したものを公式サービスとして提供していますね。ただDependabotはSwiftの対応がもう一つなのでSwiftにはRenovateがいいですね。— kishikawa katsumi (@k_katsumi) May 22, 2021 D…

FileManager.default.urlsの出力結果

概要 アプリから何かしらのファイルを保存したい場合、フォルダのパスの取得にurls(for:in:)を使用する。 以下はその際の出力のメモ書き。 参考 urls(for:in:) FileManager.SearchPathDirectory FileManager.SearchPathDomainMask 出力例 macOSでの出力例 今…

SwiftでColorSpaceを扱うときのメモ

まとめ macOS/iOSアプリを作るときはDisplay P3を採用すれば良さそう。 より色の表現幅が大きいため。 参考 Color.RGBColorSpace iOS 10 から導入された拡張sRGB色空間 (Extended sRGB Color Space) とは RGB値だけでは色は1つに定まらない NSColor の Compo…

SwiftUIのプレビューのデバイス設定

SwiftUIのプレビューのデバイス設定 設定方法 struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() .previewDevice("iPhone 8") ContentView() .previewDevice("iPad Pro (9.7-inch)") } } 使用できるデバイス…

UICollectionViewを触ってみる

UICollectionView Tutorial: Getting Started OverView この記事では基本的な実装のみ GitHub https://github.com/pommdau/raywenderlich_com_UICollectionView-Tutorial_Getting-Started Supplement a collection view is a UIScrollView subclass. APIキー…

NSOutlineViewを触ってみただけ

NSOutlineView NSOutlineView on macOS Tutorial 基本の実装はこちらから。 pommdau raywenderlich_com_NSOutlineView-on-macOS-Tutorial コメントで補足してます。