Панель инструментов внутри CollapsingToolbarLayout, название панели инструментов не отображается

Я использовал CollapsingToolbarLayout в качестве родителя Toolbar , под ним макет

 <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.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar_layout" android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar android:id="@+id/test_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:minHeight="?attr/actionBarSize" app:navigationIcon="@drawable/abc_ic_ab_back_mtrl_am_alpha" app:theme="@style/ThemeOverlay.AppCompat.Light" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> 

Затем я хочу установить заголовок Toolbar со следующим кодом, но это не сработало. Название просто не показывалось.

  Toolbar toolbar = (Toolbar) findViewById(R.id.test_toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayShowTitleEnabled(true); getSupportActionBar().setTitle("ABC"); 

Я также попытался установить заголовок в CollapsingToolbarLayout со следующим кодом, он тоже не работает.

  CollapsingToolbarLayout collapsingToolbarLayout = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar_layout); collapsingToolbarLayout.setTitleEnabled(true); collapsingToolbarLayout.setTitle("ABC"); 

Но если я удалил CollapsingToolbarLayout из своего макета и сделаю AppBarLayout в качестве прямого родителя Toolbar , код выше, чтобы установить заголовок Toolbar .

Я что-то пропустил? Эта проблема такая странная. Это ошибка в библиотеке поддержки дизайна? Как я могу решить проблему без изменения макета?

Это временное решение. Я не исследовал код глубоко, но, отключив обновление Toolbar в CollapsingToolbarLayout , он сработал.
Вот что я сделал:

 public static void setRefreshToolbarEnable(CollapsingToolbarLayout collapsingToolbarLayout, boolean refreshToolbarEnable) { try { Field field = CollapsingToolbarLayout.class.getDeclaredField("mRefreshToolbar"); field.setAccessible(true); field.setBoolean(collapsingToolbarLayout, refreshToolbarEnable); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } 

Переехать

 CollapsingToolbarLayout collapsingToolbarLayout = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar_layout); collapsingToolbarLayout.setTitleEnabled(true); collapsingToolbarLayout.setTitle("ABC"); 

From onCreate to onCreateView внутри if