Я не совсем, я получаю то, что вам нужно, но если вы просто хотите открыть одно представление в упражнении, возможно, хорошим способом будет использование намерения ACTION_VIEW
- родного способа сделать это.
public void startVideo(String videoAddress){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(videoAddress), "video/3gpp"); // The Mime type can actually be determined from the file
activity.startActivity(intent);
}
Однако это намерение побудит ваших пользователей выбрать плеер для видео. В большинстве моих случаев использование тега VideoView оказалось более полезным - просто отображать видео в полноэкранном режиме:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<VideoView
android:id="@+id/video_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center" />
</FrameLayout>
Если вы хотите иметь возможность просматривать много видео, вы можете реализовать загрузку нового видео с помощью детекторов жестов:
GestureDetector gestureDetector = new GestureDetector(new MyGestureDetector() {
@Override
public void swipeRight() {
if (currentArticle > 0) {
currentArticle--;
loadPage();
}
}
@Override
public void swipeLeft() {
if (currentArticle == articleList.size()) {
return;
} else {
currentArticle++;
loadPage();
}
}
});
View.OnTouchListener gestureListener = new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
};
Надеюсь, некоторые мои предложения окажутся вам полезны!