ビデオ再生中にビデオビューを非表示にし、ビデオ再生を開始し、ビデオビューを表示する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