-2

カメラを起動してQRコードをスキャンする必要があるアプリケーションを作成しています。スキャナーが起動するクラスを使用しています。iPhoneでは問題ありませんが、iPadではクラッシュします。私はコードを使用しています

if(![[appDelegate.tabbarcontroller.viewControllers objectAtIndex:1] isMovingFromParentViewController]) { 
    [[appDelegate.tabbarcontroller.viewControllers objectAtIndex:1] popToRootViewControllerAnimated:NO];
}
4

2 に答える 2

2

iOS で防御的プログラミングを使用することは、クラッシュを防ぐための非常に優れた戦略です。

あなたの質問について、Apple docから:

デフォルト コントロールを含むイメージ ピッカー コントローラーを使用するには、次の手順を実行します。

デバイスが目的のソースからコンテンツを選択できることを確認します。isSourceTypeAvailable: クラス メソッドを呼び出して、「UIImagePickerControllerSourceType」列挙型から定数を提供します。

availableMediaTypesForSourceType: クラス メソッドを呼び出して、使用しているソース タイプに対して使用可能なメディア タイプを確認します。これにより、動画撮影に使用できるカメラと静止画のみに使用できるカメラを区別できます。

Mugunth Kumarによるリンクiphone-tutorial-better-way-to-check-capabilities-of-ios-devicesは、デバイス機能に対してチェックする必要がある情報を提供します。

それが役に立てば幸い。

于 2012-05-24T11:36:35.827 に答える