我想创建一种覆盖类型的布局,以显示在包括工具栏在内的活动上方。我无法使用任何库来执行此操作,因为我编写的所有内容都是自定义的。我可以通过使用以下代码直接将视图添加到装饰视图来实现它:
ViewGroup vg = (ViewGroup)(getWindow().getDecorView().getRootView());
tutorialViewContainer = (RelativeLayout) View.inflate(this, R.layout.layout_simple_overlay, null);
vg.addView(tutorialViewContainer, params);
但这段代码有一个问题,它甚至覆盖了状态栏和导航栏。我只需要覆盖包括工具栏在内的活动空间。
我必须做一些类似于这些帖子的东西 -here https://stackoverflow.com/questions/10216937/how-do-i-create-a-help-overlay-like-you-see-in-a-few-android-apps-and-ics and here https://stackoverflow.com/questions/26348560/making-a-tutorial-coach-mark-overlay-need-help-moving-a-view-based-on-the-pos但问题是我正在使用添加了应用程序栏的协调器布局。所以我无法使视图在工具栏上方可见。
这是 xml 代码。simple_overlay_container
是我为叠加添加的视图,但它显示在工具栏下方。
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main_content"
style="@style/ActivityBaseStyle"
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"
android:fitsSystemWindows="false"
tools:context=".activity.BaseAmcatQuestionActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/main.appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fitsSystemWindows="true"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<include
android:id="@+id/toolbar_base_question_activity"
layout="@layout/toolbar_test_custom"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.design.widget.AppBarLayout>
<FrameLayout
android:id="@+id/fl_container_base_amcat"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
<!--Question View Anchor Fab-->
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab1_language"
android:layout_width="wrap_content"
android:layout_height="@dimen/fab_size_40"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/margin_fab_first"
android:clickable="true"
android:scaleType="center"
android:src="@drawable/ic_fab_language"
app:backgroundTint="@color/bg_color_fab_language"
app:layout_anchor="@+id/toolbar_base_question_activity"
app:layout_anchorGravity="bottom|right|end"/>
<!--info view anchor FAB-->
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab2_info"
android:layout_width="wrap_content"
android:layout_height="@dimen/fab_size_40"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/margin_fab_second"
android:clickable="true"
android:scaleType="center"
android:src="@drawable/ic_fab_info"
android:visibility="gone"
app:backgroundTint="@color/bg_color_fab_info"
app:layout_anchor="@+id/fab1_language"
app:layout_anchorGravity="bottom|center_horizontal"/>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab3_question"
android:layout_width="wrap_content"
android:layout_height="@dimen/fab_size_40"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/margin_fab_third"
android:clickable="true"
android:scaleType="center"
android:src="@drawable/ic_fab_question"
android:visibility="gone"
app:backgroundTint="@color/bg_color_fab_question"
app:layout_anchor="@+id/fab2_info"
app:layout_anchorGravity="bottom|center_horizontal"/>
<RelativeLayout android:id="@+id/simple_overlay_container"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
app:layout_anchor="@+id/main.appbar"
app:layout_anchorGravity="top|left"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/transparent_overlay_gray_75"
android:visibility="gone"
android:clickable="true">
<ImageButton
android:id="@+id/imageButton_zoom_image_answer_tutorial"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:background="@android:color/transparent"
android:paddingEnd="@dimen/margin_12"
android:paddingRight="@dimen/margin_12"
android:paddingTop="@dimen/margin_12"
android:src="@drawable/ic_zoom"
android:visibility="gone"
tools:ignore="RtlSymmetry"/>
</RelativeLayout>
</android.support.design.widget.CoordinatorLayout>
我需要帮助将此视图置于工具栏上方以覆盖整个屏幕,其中包括活动和工具栏,而不是状态栏或导航栏。
我感谢您的帮助。提前致谢。
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)