videoview的MediaController在Activity中实现时可以正常工作。但是根据我的应用程序要求,我在DialogFragment中实现了相同的功能。 MediaController支持视频观看。我可以通过使用framelayout并借助以下代码来解决这个问题:
((ViewGroup) mediaController.getParent()).removeView(mediaController);
((FrameLayout) rootView.findViewById(R.id.videoViewWrapper)).addView(mediaController);
上面的代码将Media-controls带到了前台。但搜索栏更新错误。它被困在某个位置。只有当用户触摸屏幕/符号时,它才会正确更新。
如何在DialogFragment中正确更新?与以前在Activity中工作的方式相同(创建自定义媒体控件组件将是最后一个选项)。
任何帮助都会非常明显。
答案 0 :(得分:0)
当MediaController在FrameLayout中时,我也遇到了搜索栏更新问题。所以我删除了FrameLayout,并以这种方式解决了水平居中的问题。希望这能帮助别人节省时间。
WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams();
Window window = getWindow();
layoutParams.copyFrom(window.getAttributes());
layoutParams.width = WindowManager.LayoutParams.MATCH_PARENT;
layoutParams.height = WindowManager.LayoutParams.WRAP_CONTENT;
window.setAttributes(layoutParams);