VideoView の setBackgroundColor は フォアグラウンドの色を設定する
VideoViewをいじっていたら、
音声のみで、映像が流れないようになってしまった。
いろいろな動画を再生していたため、codecが足りないのかな?
とか、色々考えた。
だが、映像が流れなかった動画も、
別のVideoViewを使用している自作アプリで再生すると、
再生できた。
はて?これは一体何が起きているんだ?
と小一時間ハマる。
結果、わかったのは、
『VideoView の setBackgroundColor は フォアグラウンドの色を設定する』
ということ。
黒で塗っていたので、
まったくもって何が起きているのか理解できなかった。
なんと、映像部分が黒く塗りつぶされていたのだ。
ということで、VideoViewの背景色を指定したい場合は、
親要素のバックグラウンドを塗りましょう。
ちなみに、MediaControllerの背景色も親要素で。指定しても反映されません。