1

編集:

以前の質問 (以下) から、アセット (ビデオ) のハンドルがあり、PlayVideoViewController の実装もありますが、このアセットを playVideoViewController オブジェクトに渡す方法に行き詰まっています。実装のコード スニペットを次に示します。

  • (void)viewDidLoad { [super viewDidLoad];

    1. ALAssetRepresentation *assetRepresentation = [アセットのデフォルト表現];
    2. NSURL *URL = [資産表現の URL];
    3. NSLog(@"url: %@", URL );

.... }

1行目で、「宣言されていない識別子「資産」の使用」エラーが表示されます。「asset」を渡すことができれば問題を解決できますが、私が見た唯一の例では、ストーリーボードではなく .nib を使用しているため、たとえば、.NIB を使用した場合、呼び出しは次のようになります: PlayVideoViewController *playVideoViewController = [[PlayVideoViewController alloc ] initWithNibName:@" PlayVideoViewController" bundle:nil asset:asset]; 「資産」を渡す方法について助けてください。

==

1つのことだけを理解することはできません。誰かが私を助けてくれることを願っています. 私は.nibではなくストーリーボードを使用しているため、ここで立ち往生していることに注意してください.

アセット (ビデオ) をテーブルビューにロードしました。ユーザーがテーブルビューセルを選択すると、アプリはビデオを再生する新しいビュー コントローラー (PlayVideoViewController) に移行します。アセット (*asset) をロードしてユーザーに選択させるクラスから、次のコード スニペットがあります。

ALAsset *asset = [assets objectAtIndex:row];
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard.storyboard" bundle:nil];

PlayVideoViewController *playVideoViewController = [storyboard instantiateViewControllerWithIdentifier:@"PlayVideoViewController"];     
[self.navigationController pushViewController:playVideoViewController animated:YES ];

選択したビデオを PlayVideoViewController に渡してビデオを再生するにはどうすればよいですか? それをコードに組み込んで、例を示してください。

4

2 に答える 2

0

これは他の誰かを助けるかもしれません: 問題を解決するために、新しいビューコントローラーで ALAsset オブジェクトを作成し、storyBoard:instantiateViewControllerWithIdentifier の後にオブジェクトを渡しました。

于 2012-08-12T04:00:57.100 に答える
0

@propertyPlayVideoViewController の " " (インターフェース) ファイルに " " を作成します。このファイル.hは、ファイルの URL またはビデオを参照する何らかの方法を取ります。

次に、playVideoViewController をインスタンス化した後、プッシュする前に、そのプロパティの値をファイル URL に設定するだけで、新しいコントローラーがビデオの取得元を認識できるようになります。

于 2012-08-09T17:55:36.757 に答える