2013-08-27 25 views
5

我创建了简单的视频查看应用程序,它工作正常。我已经添加了layoutparams到视频视图,并将videoview添加到一个布局位置,那时候我的媒体控制器显示出该区域,但我希望通过视频显示媒体控制器。请向我提供您的有用建议。如何通过视频设置媒体控制器?

屏幕截图: enter image description here

代码:

public class MainActivity extends Activity { 
    private VideoView view; 
    RelativeLayout layoutmain, layout; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     layoutmain = (RelativeLayout) findViewById(R.id.id1); 
     MediaController controller = new MediaController(this); 
     view = new VideoView(this); 
     view.setVideoPath("/mnt/sdcard/jj.avi"); 
     RelativeLayout.LayoutParams viewparam = new RelativeLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT); 
     viewparam.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); 
     viewparam.addRule(RelativeLayout.ALIGN_PARENT_TOP); 
     viewparam.addRule(RelativeLayout.ALIGN_PARENT_LEFT); 
     viewparam.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); 
     view.setLayoutParams(viewparam); 
     FrameLayout.LayoutParams viewparam1 = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT); 
     controller.setLayoutParams(viewparam1); 
     view.setMediaController(controller); 
     controller.setAnchorView(controller); 
     view.requestFocus(); 
     view.start(); 
     try { 
      layout = new RelativeLayout(this); 
      RelativeLayout.LayoutParams viewparam2 = new RelativeLayout.LayoutParams(500, 500); 
      viewparam2.setMargins(20, 20, 0, 0); 
      layout.setLayoutParams(viewparam2); 
      layout.setBackgroundColor(Color.BLACK); 
      layout.addView(view); 
      layout.addView(controller); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
     layoutmain.addView(layout); 
    } 
} 

回答

5

创建XML你想要把控制器的视图,然后在代码编写这样

View v = findViewById(R.Id.yourView); 

controller.setAnchorView(v);