12

私は VideoView を使用してローカル mp4 の再生を表示しており、MediaController も使用しています。メディア コントロール バーがビデオ クリップの下ではなく、画面の中央に表示されます。setAnchorView を使用して videoView にアタッチしましたが、影響はありませんでした。メディアコントローラーをビデオビューの直下に配置するにはどうすればよいですか?

public class VideoDemo extends Activity {
private VideoView video;
private MediaController ctlr;

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    getWindow().setFormat(PixelFormat.TRANSLUCENT);
    setContentView(R.layout.main);

    File clip=new File(Environment.getExternalStorageDirectory(),
                                         "test.mp4");

    if (clip.exists()) {
        video=(VideoView)findViewById(R.id.video);
        video.setVideoPath(clip.getAbsolutePath());

        ctlr=new MediaController(this, false);
        ctlr.setAnchorView(video);
        ctlr.setMediaPlayer(video);
        video.setMediaController(ctlr);
        video.requestFocus();
    }
}
}

そして私のレイアウトは

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="400dp"
    android:layout_height="400dp"
    android:background="#fff"
    >
<VideoView 
     android:id="@+id/video" 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</LinearLayout>
4

4 に答える 4

1

試す:

ctrl.setPadding(x, y, z, w)
于 2012-03-08T13:19:30.580 に答える
1

タブレット アプリでメディア コントローラーを中央ではなくフル スクリーン サイズで表示するには、AndroidManifest.xml に uses-sdk 行を追加し、高解像度デバイスの存在を認識する SDK バージョンをターゲットにする必要があります。そうしないと、多くのビューが 480x320 に制限されます

編集: 以前に、uses-sdk を追加するといくつかの問題が発生し、その結果、下に進行状況スライダーが表示されずに巻き戻し/一時停止/転送が表示されることを投稿しましたが、Android に適合した特定のタブレットでは、ソフト ホーム/メニュー/などであることが判明しました。ボタン バーは、メディア コントローラーの下半分を覆うだけでした。

于 2012-02-19T06:00:07.667 に答える
0

これを試すことができますか:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="400dp"
    android:layout_height="400dp"
    android:background="#fff"
    android:orientation="vertical" >

    <VideoView
        android:id="@+id/video"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

</LinearLayout>

次に、Layout Params として使用して MediaController を追加します。

  • layout_width: fill_parent
  • layout_height: wrap_content
  • レイアウトの重み: 0

お役に立てれば!

于 2011-11-29T07:12:25.467 に答える
0

私はこれに対する解決策を持っています.垂直レイアウトを追加し、そのレイアウトにビデオビューを配置すると、ビデオが表示されるレイアウトの下部にメディアコントローラーが表示されます.

于 2013-06-14T02:12:40.737 に答える