如何像在 whatsapp 中一样在 CollapsingToolbarLayout 中实现字幕

Posted

技术标签:

【中文标题】如何像在 whatsapp 中一样在 CollapsingToolbarLayout 中实现字幕【英文标题】:How to implement a subtitle in CollapsingToolbarLayout like in the whatsapp 【发布时间】:2015-12-20 07:14:15 【问题描述】:

我想实现的如图所示,详情页副标题显示为“+91创建”

目前我只能实现标题。 这是我用于创建标题的代码我也需要创建子标题知道吗??

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:emojicon="http://schemas.android.com/tools"
android:id="@+id/root_view"
android:layout_
android:layout_
android:focusableInTouchMode="true">

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/main_content"
    android:layout_
    android:layout_
    android:layout_above="@+id/linearLayout"
    android:fitsSystemWindows="true">


    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_
        android:layout_
        android:fitsSystemWindows="true"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapsing_toolbar"
            android:layout_
            android:layout_
            android:fitsSystemWindows="true"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginEnd="64dp"
            app:expandedTitleMarginStart="48dp"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">

            <RelativeLayout
                android:layout_
                android:layout_
                app:layout_collapseMode="parallax" >

                <ImageView
                    android:id="@+id/event_image"
                    android:layout_
                    android:layout_
                    android:fitsSystemWindows="true"
                    android:scaleType="centerCrop"
                    android:src="@drawable/ic_launcher"
                    android:transitionName="event_image"
                  />

                <FrameLayout
                    android:layout_
                    android:layout_
                    android:layout_alignParentBottom="true"
                    android:layout_alignParentEnd="true"
                    android:layout_alignParentRight="true"
                    android:layout_alignTop="@+id/img_event"
                    android:background="@drawable/gradient_black" >

                </FrameLayout>

            </RelativeLayout>

            <include
                android:id="@+id/tool_bar"
                layout="@layout/tool_bar" />

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

【问题讨论】:

你试过getSupportActionBar().setSubtitle(""); ? @Shahzeb 是的,我有,根据开发者博客,我们只能通过 collapsingToolbar.setTitle("title");我问的是,有没有其他方法来设置字幕? android-developers.blogspot.in/2015/05/… 【参考方案1】:

你必须使用框架布局。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_
  android:layout_>

  <ImageView  
    android:layout_ 
    android:layout_ 

    android:scaleType="center"
    android:src="@drawable/golden_gate" />

  <TextView
    android:layout_ 
    android:layout_ 
    android:layout_marginBottom="20dip"
    android:layout_gravity="center_horizontal|bottom"

    android:padding="12dip"

    android:background="#AA000000"
    android:textColor="#ffffffff"

    android:text="Golden Gate" />

</FrameLayout>

完整实现:​​How to show one layout on top of the other programmatically in my case?

【讨论】:

以上是关于如何像在 whatsapp 中一样在 CollapsingToolbarLayout 中实现字幕的主要内容,如果未能解决你的问题,请参考以下文章

TextField 没有被键盘顺利推上,就像在 Whatsapp 和环聊中一样

像whatsapp一样加载联系人

WhatsApp发送消息让用户在ios中编辑消息,在android中它没有

如何在不像 Whatsapp 那样遮挡整个屏幕的情况下禁用表格视图?

在 iOS 中实现 - 带有自定义标记器的 Android MultiAutoCompleteTextView,如 Whatsapp [附加图片]

如何像 WhatsApp 一样在 PIP 模式下播放 YouTube 视频?