AsyncTask가 있는데 비디오보기를 숨기고 비디오 재생을 시작하며 비디오가 재생 중일 때 비디오보기를 표시합니다.보이지 않을 때 VideoView가 시작되지 않습니다.
비디오보기가 보이지 않을 때 비디오가 시작되지 않고 비동기 작업이 onBackground에 걸려 있습니다. 이 줄을 주석 처리하면 비디오가 재생되기 시작합니다. 동영상보기에 이 표시 되려면 표면이 필요합니까?
public void walk(final View v) {
new AsyncTask() {
@Override
protected void onPreExecute() {
super.onPreExecute();
mVideoView.setVisibility(View.INVISIBLE); // this line causes video not to start
mVideoView.start();
}
@Override
protected Object doInBackground(Object... objects) {
while (!mVideoView.isPlaying()) {}
return null;
}
@Override
protected void onPostExecute(Object o) {
super.onPostExecute(o);
mVideoView.setVisibility(View.VISIBLE);
}
}.execute();
배경의 비트는 내가 왜이 일을 해요 :
https://stackoverflow.com/search?q=%5Bandroid%5D+videoview+black
https://stackoverflow.com/search?q=%5Bandroid%5D+video+%5Bmediaplayer%5D+black : 나는 비디오를 시작할 때 일반적으로 가지고있는 블랙 플래시의 잘 알려진 문제를 피하려고