0
import android.annotation.TargetApi;
import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.view.MotionEvent;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.VideoView;
public class FullscreenActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_fullscreen);
VideoView vv1 = (VideoView) findViewById(R.id.fullscreen_content);
vv1.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.intro_video_part1);
vv1.start();
vv1.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
VideoView vv2 = (VideoView) findViewById(R.id.fullscreen_content);
vv2.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.intro_video_part2);
vv2.start();
}
});
vv2.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
VideoView vv3 = (VideoView) findViewById(R.id.fullscreen_content);
vv3.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.intro_video_part3);
vv3.start();
}
});
vv3.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
VideoView vv4 = (VideoView) findViewById(R.id.fullscreen_content);
vv4.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.intro_video_part4);
vv4.start();
}
});
vv4.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
VideoView vv42 = (VideoView) findViewById(R.id.fullscreen_content);
vv42.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.intro_video_part4_2);
vv42.start();
}
});
vv42.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
VideoView vv5 = (VideoView) findViewById(R.id.fullscreen_content);
vv5.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.intro_video_part5);
vv5.start();
}
});
}
}
所以這是我在此刻具有代碼。基本上我想要的是連續顯示6個視頻。所以我起牀了,但現在他告訴我vv2(以及之後的每一秒)都無法解決。
我是Javascript初學者,所以我不知道這意味着什麼,只有我認爲他沒有該變量集導致其在onCompletion函數中定義。
那麼我怎樣才能從onCompletion中獲得vv2呢?
或者還有其他可能的方法嗎?也許一些循環與$ i ++?
嘿,謝謝你的回答。我試過實現你的代碼,但是再次沒有運氣。 對於私人int []數據現在我得到錯誤,它是非法修飾符,只允許最終。然後對於裏面的所有東西(即counter ++,data [counter]和vv1)public void onCompletion它說:「不能引用在不同方法定義的內部類中的非最終變量」 – Jawaracing
好吧,所以我假設你得到錯誤,因爲你沒有把字段放在適當的地方。我更新我的答案,以準確顯示應在哪些字段創建。它沒有經過測試,因此您應該將其作爲您嘗試完成的基礎。此外,它應該可以幫助您瞭解爲什麼您的原始方法無法正常工作。謝謝 – brwngrldev
再次感謝你:) – Jawaracing