【发布时间】:2014-02-15 11:23:47
【问题描述】:
我最初隐藏VideoView,当加载视频时,我显示VideoView。但是,如果 VideoView 最初是 invisible,则永远不会调用 onPrepared。但是,如果 VideoView 可见,则正确调用 onPrepared。有没有办法隐藏videoView,直到加载视频。任何帮助,将不胜感激。谢谢!
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<VideoView
android:id="@+id/video"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:visibility="invisible" />
</RelativeLayout>
MainActivity.java
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
VideoView videoView = (VideoView) findViewById(R.id.video);
Uri videoUri = Uri.parse(url);
videoView.setVideoURI(videoUri);
videoView.requestFocus();
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
Toast.makeText(mActivity, "on prepared", Toast.LENGTH_SHORT).show();
videoView.setVisibility(View.VISIBLE);
}
});
}
【问题讨论】:
-
你能解决这个问题吗?
-
@J.Kowalski 检查答案:)
-
我用你原来的方法解决了这个问题,但是我做了让 videoview 不可见的布局,而不是 videoview 本身:)
-
哦,太好了 :) 我应该在一开始就尝试过
标签: android video-streaming android-videoview