这是一个片段xml:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:ignore="MergeRootFrame"
android:id="@+id/coordinatorLayout">
<org.webrtc.SurfaceViewRenderer
android:id="@+id/fullscreen_video_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<org.webrtc.SurfaceViewRenderer
android:id="@+id/pip_video_view"
android:layout_height="144dp"
android:layout_width="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="16dp"/>
</android.support.design.widget.CoordinatorLayout>
此片段交易:
getSupportFragmentManager().beginTransaction().replace(android.R.id.content, CallFragment.newInstance(), FRAGMENT_CALL).commit();
在片段的onCreate中我要求全屏窗口:
getActivity().getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
这是onViewCreated中的SnackBar创建
mySnackbar = Snackbar.make(view.findViewById(R.id.coordinatorLayout), "End call ?", Snackbar.LENGTH_SHORT);
两个渲染器都在onViewCreated中调用了setZOrderOnTop(false)
。
问题在于Lollipop,SnackBar隐藏在全屏SurfaceView后面,而在Jelly Bean上,一切都按预期工作。 如果我不要要求全屏,一切都在Lollipop中有效。
请问任何想法?提前谢谢。