展开时 CollapsingToolbarLayout 标题消失
CollapsingToolbarLayout title is gone when expanded
我有这种xml的平安。
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="?attr/actionBarSize"
android:fitsSystemWindows="true"
app:toolbarId="@+id/toolbar"
android:id="@+id/collapsing"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize" />
</android.support.design.widget.CollapsingToolbarLayout>
它根本没有显示标题。 (下图)
但是当 CollapsingToolbarLayout 有点折叠时标题显示。
我在创建方法中设置了 activity 标题。
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
CollapsingToolbarLayout layout = (CollapsingToolbarLayout) findViewById(R.id.collapsing);
layout.setTitle(toolbar.getTitle());
layout.invalidate();
完整 xml :
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.design.widget.CoordinatorLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:paddingBottom="?attr/actionBarSize"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_height="match_parent"/>
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="?attr/actionBarSize"
android:fitsSystemWindows="true"
app:toolbarId="@+id/toolbar"
android:id="@+id/collapsing"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize" />
</android.support.design.widget.CollapsingToolbarLayout>
<LinearLayout
android:id="@+id/custom_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="invisible"/>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
<LinearLayout
android:id="@+id/drawer_linear"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:orientation="vertical" >
<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:background="@color/drawer_grey"
android:divider="@drawable/drawer_divider"
android:scrollbars="none"
android:dividerHeight="1px" />
</LinearLayout>
有什么办法让标题始终显示吗?
您只需将其添加到 v-21 中的主题中即可 styles.xml。
<item name="android:windowTranslucentStatus">true</item>
我遇到了同样的问题,经过数小时的搜索,我找到了解决方案并想与您分享。
- 使用com.android.support:design:23.1.0
您的布局应如下所示:
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll|enterAlways|snap />
我希望我能帮助到别人。
解决方案来自 post.
我有这种xml的平安。
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="?attr/actionBarSize"
android:fitsSystemWindows="true"
app:toolbarId="@+id/toolbar"
android:id="@+id/collapsing"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize" />
</android.support.design.widget.CollapsingToolbarLayout>
它根本没有显示标题。 (下图)
但是当 CollapsingToolbarLayout 有点折叠时标题显示。
我在创建方法中设置了 activity 标题。
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
CollapsingToolbarLayout layout = (CollapsingToolbarLayout) findViewById(R.id.collapsing);
layout.setTitle(toolbar.getTitle());
layout.invalidate();
完整 xml :
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.design.widget.CoordinatorLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:paddingBottom="?attr/actionBarSize"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:layout_height="match_parent"/>
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="?attr/actionBarSize"
android:fitsSystemWindows="true"
app:toolbarId="@+id/toolbar"
android:id="@+id/collapsing"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize" />
</android.support.design.widget.CollapsingToolbarLayout>
<LinearLayout
android:id="@+id/custom_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="invisible"/>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
<LinearLayout
android:id="@+id/drawer_linear"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:orientation="vertical" >
<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:background="@color/drawer_grey"
android:divider="@drawable/drawer_divider"
android:scrollbars="none"
android:dividerHeight="1px" />
</LinearLayout>
有什么办法让标题始终显示吗?
您只需将其添加到 v-21 中的主题中即可 styles.xml。
<item name="android:windowTranslucentStatus">true</item>
我遇到了同样的问题,经过数小时的搜索,我找到了解决方案并想与您分享。
- 使用com.android.support:design:23.1.0
您的布局应如下所示:
<android.support.design.widget.CoordinatorLayout android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_scrollFlags="scroll|enterAlways|snap />
我希望我能帮助到别人。
解决方案来自