点击按钮播放视频文件

时间:2011-06-30 09:42:59

标签: android

每当我将这些代码行放入onClick事件按钮时,它就会给我错误解决它。 “mc = new MediaController(this);”行上的错误,错误是: (“构造函数MediaController(new View.OnClickListener(){})未定义”)

public class TrialVideoActivity extends Activity  {

 public MediaController mc;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

final Button play =(Button)findViewById(R.id.play);
  play.setOnClickListener(new OnClickListener(){
      public void onClick(View V){

  VideoView vd = (VideoView) findViewById(R.id.surface_view);
  Uri uri = Uri.parse("android.resource://" + getPackageName() + "/"+R.raw.lic);
  mc = new MediaController(this);
  vd.setMediaController(mc);
  vd.requestFocus();
  vd.setVideoURI(uri);
  vd.start();





      }
  });}

每当我直接播放视频文件时,它都会完美运行,但只要我将它放入按钮中,它就会显示上述错误。 请帮助我。

还有一件事如何提高视频质量,当视频播放视频的声音时缓冲b'coz是可以的,但视频会落后于声音......

1 个答案:

答案 0 :(得分:1)

 mc = new MediaController(this);

在这一行上你传递按钮上下文,我认为你应该传递你的活动背景。 为此,您应声明上下文

私人语境环境; 在Class内部,然后在 onCreat()内部,您可以通过

初始化它
context = this;

并使用

  mc = new MediaController(context);      // this is using context of Activity Class. 

这是解决上下文问题的更好方法。