2016-07-01 15 views
0

私はリストビューを持っています。リストビュー内のアイテムをクリックすると、新しいアクティビティが開きます。新しいアクティビティのxmlは次のとおりです。Androidサーフェイスビューが破壊される

私はインテントとして送信し、アクティビティを開きます。例えば。アイテム名をビデオとして送信すると、アクティビティでビデオが開きます。次の項目をクリックすると、リストの次の項目が表示されます。前のボタンを押すと前の項目が表示されます。

私の問題は、リスト内のビデオアイテムをクリックすると、ビデオが表示されます。それはうまくいきます。しかし、私はいくつかの他の項目を開いてwebviewと、次/前のボタンをクリックすると、ビデオを再生しません。私がログを記録すると、サーフェイスビューが作成されてからサーフェスが変更され、すぐに破棄されてメディアプレーヤsetOnCompletionListenerに移動することがわかりました。

答えて

0

ビューに動的にサーフェイスビューを追加できます。

例:layout.xml

<FrameLayout 
    android:id="@+id/fragment_file_videoplayer_surface_container" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"> 
</FrameLayout> 

MainActivity.java

FrameLayout fl_surfaceview_container = (FrameLayout)findViewById(R.id.fragment_file_videoplayer_surface_container); 

//Add surfaceView on Framelayout 
SurfaceView videoSurface = new SurfaceView(getActivity()); 
fl_surfaceview_container.addView(videoSurface); 

//if remove or destroy surfaceview 
fl_surfaceview_container.removeAllViews(); 
関連する問題