2014-03-13 54 views
1

我有四個視頻正在從一個網址加載一個活動。現在的問題是,當我開始活動的所有視頻同時播放。實際上我想要的是在開始時停止所有視頻,並且當用戶點擊播放按鈕時應該播放所選視頻。如果有人有任何教程或任何有關此問題的代碼幫助,請幫助我。Android:多視頻錯誤

編輯:

這裏是我的活動代碼。

MediaController mediaController; 
    private static String Video_url="http://mywebsite.com/files/video1.mp4"; 
    private static String Video_url2="http://mywebsite.com/files/video2.mp4"; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.url_activity_video); 

     VideoView video = (VideoView)findViewById(R.id.videoView); 
     VideoView video2 = (VideoView)findViewById(R.id.videoView2); 

     mediaController = new MediaController(this); 


     getWindow().setFormat(PixelFormat.UNKNOWN); 



     mediaController.setAnchorView(video); 
     String Video=Video_url; 
     video.setMediaController(mediaController); 
     video.setVideoURI(Uri.parse(Video)); 
     video.start(); 


     ///////////// Video 2 ///////// 
     mediaController.setAnchorView(video2); 
     String Video2=Video_url2; 
     video.setMediaController(mediaController); 
     video.setVideoURI(Uri.parse(Video2)); 
     video.start(); 


    } 
+0

你在哪裏加載這些視頻嗎?請發佈您的代碼。 –

+0

發佈您綁定的代碼。 。 。 。 – VIGNESH

+0

@VIGNESH這裏是代碼檢查 –

回答

0

您可以簡單地創建一個按鈕和按鈕的點擊監聽器,您可以添加以下代碼:

button1.setOnClickListener(new View.OnClickListener() { 

@Override 
public void onClick(View view) { 
    playVideo1(your video url) 
} 
}); 

    button2.setOnClickListener(new View.OnClickListener() { 

@Override 
public void onClick(View view) { 
    playVideo2(your video url) 
} 
}); 

public static void playVideo1(String urlPath) { 

VideoView mVideoview; // Added this line 
mVideoView =(VideoView) findViewByid(R.yourvideoviewid); 

try { 
// Start the MediaController 
MediaController mediacontroller = new MediaController(mContext); 
mediacontroller.setAnchorView(mVideoview); 
// Get the URL from String VideoURL 
Uri mVideo = Uri.parse(urlPath); 
mVideoview.setMediaController(mediacontroller); 
mVideoview.setVideoURI(mVideo); 

} catch (Exception e) { 
Log.e("Error", e.getMessage()); 
e.printStackTrace(); 

} 

mVideoview.requestFocus(); 
mVideoview.setOnPreparedListener(new OnPreparedListener() { 
// Close the progress bar and play the video 
public void onPrepared(MediaPlayer mp) { 
mVideoview.start(); 

} 
}); 

mVideoview.setOnCompletionListener(new OnCompletionListener() { 

public void onCompletion(MediaPlayer mp) { 

} 
}); 

} 

希望這回答了你的問題。

+0

在這一行我得到一個錯誤'mVideoview.requestFocus();'mVideoview無法解析到一個類型 –

+0

我應該ini這mVideo查看一次在這個,如果我這樣做,它給了我一個錯誤在播放方法,因爲它一個靜態和Java不會讓我做靜態參考。非靜態圖像 –

+0

任何停止視頻選擇第二個視頻的方法? –

0

您正在使用onCreate方法啓動這兩個視頻,因此它同時開始播放這兩個視頻。

做如下,

button1.setOnClickListener(new View.OnClickListener() { 

@Override 
public void onClick(View view) { 
    video1.start(); 
} 
}); 

    button2.setOnClickListener(new View.OnClickListener() { 

@Override 
public void onClick(View view) { 
    video2.start(); 
} 
}); 

而且也是在你的代碼張貼video對象初始化2倍。

應該video2的第二個視頻,根據您的代碼