更新:我最终将视频播放器分离为单独的活动和布局。然后我使用下面的代码开始了这个活动。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startActivityForResult(new Intent(MainActivity.this, VideoActivity.class), VIDEO_PID); //load video
//etc.
}
当应用程序加载时,我调用这个函数来杀死视频活动并将主要活动带到最前面:
public void doneLoading() {
finishActivity(VIDEO_PID);
}
我不知道这是否是最好的方法,但它确实有效。
========================
显示居中的 VideoView 然后在应用程序完全加载后切换到 WebView 的最简单方法是什么?我验证了这两个视图在单独包含在应用程序中时都有效。我只想在加载时只显示 VideoView,然后隐藏它直到应用程序关闭。
我正在研究 ViewPager 和 ViewFlipper,但我还没有得到任何工作。我打算避免将它们包含在单独的活动中。PageViewer 似乎管理视图(意味着允许它们自己运行和初始化),但实际上并没有显示它们(我看到的只是一个黑屏)。我可能错过了一些东西。
启动加载视频然后启动另一个初始化 webview 的活动会更容易吗,该活动请求焦点并在初始化完成后发送一条消息让加载视频活动退出?
我的布局如下所示,以了解我正在使用什么。谢谢。
PS 我避免使用 Fragments 来支持 Gingerbread。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<android.support.v4.view.ViewPager android:id="@+id/view_pager"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1" >
<VideoView
android:id="@+id/videoview_component"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_gravity="center"
/>
<WebView
android:id="@+id/webview_component"
android:layout_width="fill_parent"
android:layout_height="0dip"
/>
</android.support.v4.view.ViewPager>
</LinearLayout>