协调器布局

时间:2016-11-30 09:59:36

标签: android android-actionbar android-coordinatorlayout android-actionbar-compat android-actionbaractivity

在我的应用程序中,有一个活动的布局如下所示。我遇到的问题是,当该活动开始时,操作栏变为不可见,CoordinatorLayout占用所有屏幕。 我想要做的是actionBAr应该是可见的。我的应用程序的操作栏看起来像下面“操作栏”部分中显示的图像。

为了解决这个问题,我做了以下几点:

我将“FloatingButtonTheme”添加到styles.xml文件中,如下面的“styles.xml”所示。并在清单文件中添加了以下代码:

<activity 
    android:name="x.xx.xxx.activity.ListeActivity"
    android:theme="@style/FloatingButtonTheme">

但我得到的结果是,活动占用屏幕上的所有空间,浮动按钮出现,但操作栏永远不会出现。

请让我知道如何强制我的操作栏,如下图所示?

实际上,只有在我使用

时才会出现此问题

活动布局

<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="wrap_content"
    android:fitsSystemWindows="true"
    tools:context=".activity.VersiecherungsListeActivity">

    <include layout="@layout/versicherungslisteactivity_vers_view" />

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/versicherungslisteactivity_fab_add"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="10dp"
        android:src="@android:drawable/ic_input_add"
        app:backgroundTint="@color/light_orange" />

</android.support.design.widget.CoordinatorLayout>

操作栏

enter image description here

sytles

<style name="AppBaseTheme" parent="android:Theme.Holo.Light">

</style>

<style name="AppTheme" parent="AppBaseTheme">

</style>
<style name="FloatingButtonTheme" parent="Theme.AppCompat.Light.DarkActionBar">

</style>

3 个答案:

答案 0 :(得分:1)

在协调员布局下面添加工具栏:

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        app:layout_scrollFlags="scroll|enterAlways" />

活动

ToolBar toolbar =(ToolBar)finfViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

答案 1 :(得分:1)

我刚刚向CoordinatorLayout添加了android:theme =“@ style / Theme.AppCompat.Light.DarkActionBar”,如下所示:

<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"
    android:fitsSystemWindows="true"
    tools:context=".activity.VersiecherungsListeActivity"
    android:theme="@style/Theme.AppCompat.Light.DarkActionBar">

    <include layout="@layout/versicherungslisteactivity_vers_view" />

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/versicherungslisteactivity_fab_add"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="10dp"
        android:src="@android:drawable/ic_input_add"
        app:backgroundTint="@color/light_orange" />

</android.support.design.widget.CoordinatorLayout>

答案 2 :(得分:0)

appbartoolbar添加到您的xml,或仅toolbar

<android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:animateLayoutChanges="true"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">


        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|enterAlways"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>