2

У меня возникла проблема с панелью приложений в новой библиотеке поддержки материалов. Моя проблема в том, что CollapsingToolbarLayout находится на другом уровне, чем верхняя часть панели инструментов. Вот мой XML код для макета:Складная проблема с поднятием панели приложений с поддержкой библиотеки

<android.support.design.widget.CoordinatorLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:fitsSystemWindows="true"> 

<android.support.design.widget.AppBarLayout 
    android:id="@+id/app_bar_layout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
    android:fitsSystemWindows="true" 
    android:elevation="25dp"> 

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

     <com.example.example.widgets.CustomImageView 
      android:id="@+id/image" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:scaleType="centerCrop" 
      android:fitsSystemWindows="true" 
      app:layout_collapseMode="parallax"/> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
      app:layout_collapseMode="pin" /> 

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

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

<android.support.v4.widget.NestedScrollView 
    android:id="@+id/scroll" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:clipToPadding="false" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

    <FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <android.support.v7.widget.CardView 
      ...> 

      <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical"> 

       <TextView 
        .../> 

       <TextView 
        .../> 

      </LinearLayout> 

     </android.support.v7.widget.CardView> 

    </FrameLayout> 

</android.support.v4.widget.NestedScrollView> 

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

Вот мой onCreate Java код Activiy:

@Override protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_write); 

    setSupportActionBar((Toolbar) findViewById(R.id.toolbar)); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

    getSupportActionBar().setTitle("App Name"); 

    collapsingToolbarLayout = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar); 
    collapsingToolbarLayout.setTitle("Title"); 
    collapsingToolbarLayout.setExpandedTitleTextAppearance(R.style.LargeText); 
} 

Наконец, вот скриншот моей проблемы:

Image 1

Опять же проблема заключается в нижнем половина бара (Коллапсирующая часть) не находится на одном уровне. Любые советы о том, как исправить это было бы здорово!

Спасибо!


EDIT:

Вот мой обновленный активность изображения:

Image 2

Все материалы, кроме заголовка в настоящее время нет

ответ

0

Я думаю, что тема вас При применении к этой деятельности уже есть A ctionBar. Используйте темы NoActionBar, если вы хотите использовать ToolBar и хотите установить его как ActionBar.

+0

Как я могу это сделать, и сохранить титул и выпадающее меню, в котором приложение бар имеет? – 26hmkk

+0

Примените Theme.AppCompat.NoActionBar к этой операции в файле манифеста Android и установите панель инструментов как ActionBar с помощью метода setSupportActionBar. – jimmy0251

+0

Это отлично работает, но теперь мой AppBar не отображает мою кнопку возврата или какие-либо элементы моего меню ... – 26hmkk

0

При использовании CollapsingToolbar вы не должны установить заголовок в ActionBar, это только выставиться в CollapsingToolbar

//This one is not needed 
//getSupportActionBar().setTitle("App Name"); 

collapsingToolbar.setTitle("App Name"); 

 Смежные вопросы

  • Нет связанных вопросов^_^