为什么折叠工具栏标题在工具栏下?

时间:2016-10-17 11:04:03

标签: android android-toolbar android-collapsingtoolbarlayout

我的活动设计如下:

public static void main( String[] args)
{
    File filename = new File( "animals2.txt");

    try{
        Scanner sc = new Scanner( filename);

        while( sc.hasNextLine())
        {
            String line = sc.nextLine();
            String[] arr = line.split( "\\$");

            for( String str : arr)
            {
                txaDisplay.append( str + "\n");
            }
        }
    } catch( Exception e) {
        e.printStackTrace();
    }
}

但设计就是这样发生的。折叠工具栏标题位于工具栏下。

enter image description here

此外,我使用此<android.support.design.widget.AppBarLayout android:id="@+id/movie_detail_appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/movie_detail_collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/movie_detail_header_image" android:layout_width="match_parent" android:layout_height="250dp" android:fitsSystemWindows="true" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:background="#99000026" android:fitsSystemWindows="true" android:orientation="horizontal" android:weightSum="10"> <ImageView android:id="@+id/detail_movie_poster" android:layout_width="90dp" android:layout_height="110dp" android:layout_margin="10dp" android:layout_weight="1" android:scaleType="centerInside" android:src="@drawable/no_movie_image" /> <LinearLayout android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="9" android:orientation="vertical"> <TextView android:id="@+id/detail_movie_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever" android:singleLine="true" android:textColor="@android:color/white" android:textSize="26sp" /> <TextView android:id="@+id/detail_movie_original_name" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="16sp" /> <TextView android:id="@+id/detail_movie_genres" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:singleLine="true" android:textSize="14sp" /> </LinearLayout> </LinearLayout> <android.support.v7.widget.Toolbar android:id="@+id/movie_detail_toolbar" android:layout_width="match_parent" android:layout_height="65dp" android:fitsSystemWindows="true" app:layout_collapseMode="pin" app:popupTheme="@style/ThemeOverlay.AppCompat.ActionBar" /> </android.support.design.widget.CollapsingToolbarLayout> <android.support.design.widget.TabLayout android:id="@+id/movie_detail_tabs" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:layout_gravity="bottom" app:tabIndicatorColor="@android:color/white" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> </android.support.design.widget.AppBarLayout> <android.support.v4.view.ViewPager android:id="@+id/movie_detail_viewpager" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 动态折叠工具栏标题:

initCollapsingToolbar()

4 个答案:

答案 0 :(得分:7)

我解决了这个问题。我的解决方案就在这里

首先,我将app:titleEnabled="false"添加到CollapsingToolbar

<android.support.design.widget.CollapsingToolbarLayout
    android:id="@+id/movie_detail_collapsing_toolbar"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    app:contentScrim="?attr/colorPrimary"
    app:layout_scrollFlags="scroll|exitUntilCollapsed"
    app:titleEnabled="false">

然后在collapsingToolbar.setTitle();

中将getSupportActionBar().setTitle(); 更改为initCollapsingToolbar()

最后将app:titleMarginTop="14dp"添加到toolbar

也许这种解决方案很糟糕,但这就是我所能做的。

答案 1 :(得分:1)

在collapseToolbarLayout

下将android:layout_height="match_parent"更改为android:layout_height="wrap_content"

答案 2 :(得分:0)

这似乎只是模拟器中的bug,真正的设备还可以。

答案 3 :(得分:0)

我有这个问题。工具栏标题从底部切断。 在<toolbar>中添加一些任意底边距i。

app:titleMarginBottom="44dp"添加到<toolbar>

enter image description here