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

このセクションでは、Xamarin.iOS (旧 MonoTouch) アプリケーションを開発するときに開発者が認識する必要がある、より一般的なタスクや概念のいくつかについてのガイドを提供します。

アクセシビリティ

このドキュメントでは、できるだけ多くのユーザーがアクセスできるアプリケーションを構築するために使用できるさまざまな API とツールについて説明します。

アプリケーション トランスポート セキュリティ

この記事では、App Transport Security が iOS 9 アプリに適用するセキュリティ変更と、これが Xamarin.iOS プロジェクトに何を意味するかを紹介し、ATS 構成オプションについて説明し、必要に応じて ATS をオプトアウトする方法について説明します。 ATS は既定で有効になっているため、セキュリティで保護されていないインターネット接続では、iOS 9 アプリで例外が発生します(明示的に許可していない限り)。

バックグラウンド処理

バックグラウンド処理またはバックグラウンド化は、別のアプリケーションがフォアグラウンドで実行されている間に、アプリケーションがバックグラウンドでタスクを実行できるようにするプロセスです。 このガイドは、iOS のバックグラウンド処理の入門として機能します。

コードでの iOS アプリケーションの作成

この記事では、Visual Studio と Visual Studio for Mac を使用して、コード内で iOS アプリケーションを完全に作成する方法について説明します。 空のプロジェクト テンプレートから開始し、UIKit からビューの階層を作成して、コントローラーにアプリケーション画面を構築する方法を示します。 次に、コントローラーに読み込むことができるカスタム ビューを作成する方法について説明します。

例外のマーシャリング

ネイティブ フレームとマネージド フレームの間で Objective-C 例外とマネージド例外をマーシャリングする方法について説明します。

イベント、プロトコル、デリゲート

この記事では、コールバックを受信し、ユーザー インターフェイス コントロールにデータを設定するために使用される主要な iOS テクノロジについて説明します。 これらのテクノロジは、イベント、プロトコル、デリゲートです。この記事では、これらのそれぞれが何であるか、それぞれが C# からどのように使用されるかについて説明します。 Xamarin.iOS が iOS コントロールを使用して使い慣れた .NET イベントを公開する方法と、Xamarin.iOS がプロトコルやデリゲートなどの Objective-C 概念をサポートする方法を示します (Objective-C デリゲートを C# デリゲートと混同しないでください)。 また、この記事では、Objective-C デリゲートの基礎としてプロトコルを使用する方法と、デリゲート以外のシナリオでのプロトコルを使用する方法を示す例も提供します。

ファイル システムの処理

Xamarin.iOS では、任意の .NET アプリケーションで使用するのと同じ System.IO クラスを使用して、iOS 内のファイルとディレクトリを操作できます。 ただし、使い慣れたクラスやメソッドにもかかわらず、iOS は作成またはアクセスできるファイルにいくつかの制限を実装し、特定のディレクトリに特別な機能も提供します。 この記事では、これらの制限と機能について概説し、Xamarin.iOS アプリケーションでのファイル アクセスのしくみについて説明します。

画像の操作

この記事では、Xamarin.iOS でイメージを使用する方法について説明します。これらのイメージには、アプリケーション サポート イメージ (アイコン、イメージの読み込みなど) とアプリケーション内のイメージ (コントロールに適用されるイメージなど) が含まれます。 また、Visual Studio for Mac を使用してイメージを組み込む方法と、コードからイメージを操作する方法についても説明します。

ローカライズ

このガイドでは、国際化をサポートするために Xamarin.iOS アプリケーションにエンコードを追加する方法について説明します。

プロパティ リストの操作

このドキュメントでは、Info.plist と Entitlements.plist を操作するための Visual Studio for Mac のグラフィカルおよび高度なプロパティ リスト (.plist) エディターについて説明します。 iOS アプリケーションのアイコンの設定とイメージの起動を示し、Visual Studio for Mac 内からアプリの機能 (資格) を指定する方法を示します。

セキュリティとプライバシーの操作

Apple は、iOS 10 (以降) のセキュリティとプライバシーの両方にいくつかの機能強化を行いました。これにより、開発者はアプリのセキュリティを強化し、エンド ユーザーのプライバシーを確保できます。 この記事では、Xamarin.iOS アプリでのこれらの機能の実装について説明します。

スレッド化

この記事では、Xamarin.iOS アプリケーションでのスレッド処理について説明し、.NET スレッド プール、応答性の高いアプリケーション、ガベージ コレクションについて少し説明します。

タッチ

今日のデバイスの多くでタッチ スクリーンを使用すると、ユーザーは自然で直感的な方法でデバイスを迅速かつ効率的に操作できます。 この操作は、単純なタッチ検出だけに限定されず、ジェスチャも使用することが可能です。 たとえば、ピンチしてズームするジェスチャは、これの非常に一般的な例です。ユーザーは 2 本の指で画面の一部をピンチすることで、ズームインまたはズームアウトできます。このガイドでは、iOS でのタッチとジェスチャについて説明します。

ユーザーの既定値の操作

NSUserDefaults クラスは、iOS アプリと拡張機能がシステム全体の既定のシステムとプログラムで対話する方法を提供します。 Defaults System を使用すると、ユーザーは (アプリの設計に基づいて) 自分の好みに合わせてアプリの動作またはスタイルを構成できます。 たとえば、メートル法とインペリアル法による測定値でデータを表示したり、特定の UI テーマを選択したりできます。