Xamarin.Mac アプリケーションの基礎

一般的なパターンとイディオム

C# から公開されている Apple API 全体で、特定のイディオムやパターンが繰り返し登場します。 Xamarin.iOS を使用したプログラミングの経験があるなら、見覚えがあるかもしれません。 これらのパターンやイディオムは、ドキュメントで繰り返し参照することが多いため、しっかり理解しておくと、見つけたドキュメントを理解するのに役立ちます。

Mac API について

Xamarin.Mac を使用して開発する時間の多くは、基になる Objective-C API をあまり気にすることなく、C# で考える、読む、記述することができます。 しかしながら、ときどき、Apple の API ドキュメントを読む、Stack Overflow の回答をご自分の問題の解決策に変換する、あるいは既存のサンプルと比較する必要が生じます。

コンソール アプリ

Xamarin.Mac を使用してネイティブ macOS API にアクセスする "ヘッドレス" コンソール アプリをビルドすることもできます。

.xib ファイルの操作

この記事は、Xcode の Interface Builder で作成された .xib ファイルを操作して、Xamarin.Mac アプリケーションのユーザー インターフェイスを作成および管理する方法について説明しています。

ユーザー インターフェイスの設計

この記事は、.storyboard または .xib ファイルで Xcode の Interface Builder を使用せずに、C# コードから直接 Xamarin.Mac アプリケーションのユーザー インターフェイスを作成する方法について説明しています。

画像の操作

この記事は、Xamarin.Mac アプリケーションの画像とアイコンの操作について説明しています。 また、アプリケーションのアイコンを作成するために必要な画像の作成と管理、C# コードと Xcode の Interface Builder の両方での画像の使用について説明しています。

データ バインディングとキー値のコーディング

この記事は、Xcode の Interface Builder の UI 要素に対するデータ バインディングを可能にするキー値のコーディングとキー値の監視の使用について説明しています。 この手法を使用すると、Xamarin.Mac アプリケーション用に記述が必要な C# コードの量を大幅に削減できます。

データベースの操作

この記事は、Xcode の Interface Builder の UI 要素に対して SQLite データベースへの直接アクセスによるデータ バインディングを可能にするキー値のコーディングとキー値の監視の使用について説明しています。 また、SQLite.NET ORM を使用して SQLite データへのアクセスを提供する方法についても説明しています。

コピーと貼り付けの操作

この記事は、ペーストボードを操作して、Xamarin.Mac アプリケーションでコピーと貼り付けを行う方法について説明しています。 また、複数のアプリ間で共有できる標準データ型の操作方法と、特定のアプリ内でカスタム データをサポートする方法について説明しています。

Xamarin.Mac アプリのサンドボックス化

この記事は、App Store でリリースするための Xamarin.Mac アプリケーションのサンドボックス化について説明しています。 また、サンドボックスに含めるすべての要素 (コンテナー ディレクトリ、エンタイトルメント、ユーザーが決定するアクセス許可、特権の分離、カーネルの強制) について説明しています。

AVAudioPlayer を使ったサウンドの再生

この記事は、AVAudioPlayer を使ってサウンドの再生を制御するヘルパー クラスを使用する方法について説明しています。

バグの報告

プロジェクトを進めていく中で、API が思ったように動作しなかったり、バグを回避しようとしたりして行き詰まることがあります。 Xamarin における目標は、モバイル アプリケーションとデスクトップ アプリケーションを正常に作成していただくことなので、有用なリソースを提供しています。