2011-06-28 9 views
11

私はVideoViewを使ってローカルmp4を再生していますが、MediaControllerも使用しています。メディアコントロールバーはビデオクリップの下に表示されず、画面の中央に表示されます。私はsetAnchorViewを使ってそれを私のvideoViewに添付しましたが、それは何の影響もありませんでした。どのように私のmediacontrollerを私のvideoviewの直下に配置するのですか?MediaController Positioning

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> 
+2

あなたはこれを理解しましたか?私はタブレットアプリケーションを作成しており、まったく同じことをしたいと思っています。ビデオを再生するのに問題はありません。私はコントロールをビデオビューに表示したいだけです。 – Brian

+0

こちらのタブレットでは同じ問題があります。誰もまだ解決策を見つけられませんでしたか? – Helden

答えて

0

あなたはこの試みることができます:fill_parent:

<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> 

次にレイアウトのparamsとして

  • layout_widthを使用してのMediaControllerを追加します0
  • layout_height:wrap_content
  • layout_weight:0

は、この情報がお役に立てば幸い!

+0

運がまだありませんか? –

1

メディアコントローラを中央の代わりにフルスクリーンサイズで表示させるには、AndroidManifest.xmlにuses-sdk行を入れ、その存在を認識しているsdkバージョンをターゲットにする必要がありますより高解像度のデバイス - それ以外の場合、多くのビューは480x320に制限されます

編集:私は以前に、use-sdkを追加することでいくつかの問題が発生していることを確認しました。柔らかいホーム/メニュー/ etcボタンのバーは、単にメディアコントローラの下半分をカバーしていたことがわかりました。

1

試してみてください。

ctrl.setPadding(x, y, z, w) 
0

私は、このためのソリューションを持って、垂直方向のレイアウトを追加するには、そのレイアウトにvideoviewを入れ、メディアコントローラは、THW映像が表示されるレイアウトの下部に表示されます。

関連する問題