4

基本的に、アプリケーションでやりたいことはビデオを表示することです。

この目標を達成するための最良のツールは、VideoView のようです。

だから私はこのコードを使用しました:

<VideoView android:id="@+id/videoview" android:layout_width="50dip" android:layout_height="50dip"></VideoView>

そして私の活動で:

 VideoView videoHolder = (VideoView)findViewById(R.id.videoview);
 videoHolder.setMediaController(new MediaController(this));
 videoHolder.setVideoURI(Uri.parse("android.resource://com.blabla.blabla/" + R.raw.blabla));
 videoHolder.requestFocus(); 
 videoHolder.start(); 

そしてそれはトリックを行います。

残念ながら、デフォルトでレイアウトにビデオのプレビュー(サムネイル)があると思っていました

だから、私は videoHolder.start(); を削除しました。コマンドですが、黒い画面しか表示されません。インビジブルゾーンをタップすると動画がスタート…

最初の質問

ビデオを開始する前にビデオのプレビューを VideoView に表示することは可能ですか?

2 番目の質問

Web ビューをダブルタップしたときにビデオをフルスクリーンで表示したいのですが、どうすれば実現できますか?

ヘルプ/リンク/提案をありがとう

4

2 に答える 2

3

はい、 ThumbnailUtilsを使用してビデオのサムネイルを取得できます。

Bitmap thumb = ThumbnailUtils.createVideoThumbnail(path,
    MediaStore.Images.Thumbnails.MINI_KIND);

アプリがフルスクリーンに切り替わるのを見たことがありません。それができるかどうかは実際にはわかりません(特に a の場合VideoView)。ただし、次のいずれかの方法でうまくいく場合があります。

  1. を に保持し、VideoViewそのFrameLayoutレイアウト パラメータを変更します。
  2. VideoViewビアのオーバーレイWindow#addContentView
  3. Visibility.GONE他のビューを( 経由で) 非表示にし、 のVideoViewレイアウト領域を拡張できるようにします。
于 2011-04-12T18:45:11.973 に答える
0

代わりに VideoView.seekTo(milliseconds) を使用できます。たとえば、1 秒 (1000 ミリ秒) とします。一部のビデオが空白の画面から始まり、シーンへの「フェードイン」(より良い言葉の欠如)のように、1秒後のビデオクリップに画像がある場合、1秒で黒い画面が表示されることがよくあります. これは、VideoView.onPrepared() の下で呼び出すことができます。これは、ビデオが Web サーバー上にあるときに使用します。

于 2011-08-09T14:29:55.410 に答える