Design Support Libraryをアプリケーションに統合するのに問題があります。何らかの理由で、ツールバーはCollapsingToolbarLayoutで折りたたまれ、Chris BanesによるCheesesquareの例のように固定されたままになりません。 https://github.com/chrisbanes/cheesesquare
私は自分のレイアウトと何も変わりませんでした。実際、私は自分のスタイルを彼のものに置き換え、彼のレイアウトに落とし込みました。 Android.support.v7.widget.Toolbarの代わりにツールバーを使用すると、これが発生するのでしょうか。
ここに問題があります。
AppBarセクションの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:id="@+id/main_content"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:fitsSystemWindows="true">
<Android.support.design.widget.AppBarLayout
Android:id="@+id/appbar"
Android:layout_width="match_parent"
Android:layout_height="@dimen/detail_backdrop_height"
Android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
Android:fitsSystemWindows="true">
<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"
Android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp">
<ImageView
Android:id="@+id/backdrop"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
<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.design.widget.CoordinatorLayout>
あなたの直感は正しかった:CollapsingToolbarLayout
は、サポートToolbar
を使用してあなたに依存している-それを使用して、CollapsingToolbarLayout
の最小高さを設定する(他の多くのものの中で)。 Toolbar
で最高のエクスペリエンスを確保するには、CollapsingToolbarLayout
のサポートバージョンの使用に切り替える必要があります。
<?xml version="1.0" encoding="utf-8"?>
<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:fitsSystemWindows="true"
tools:context=".UserDetail" >
<Android.support.design.widget.AppBarLayout
Android:id="@+id/app_bar_layout"
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/collapsing_toolbar"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
Android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp" >
<ImageView
Android:id="@+id/imageView_list"
Android:layout_width="match_parent"
Android:layout_height="275dp"
app:layout_collapseMode="parallax"
Android:fitsSystemWindows="true"
Android:scaleType="fitXY"
Android:src="@drawable/default_profile" />
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
</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="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
Android:clipToPadding="false" >
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical" >
<TableLayout
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_gravity="center_horizontal"
Android:layout_margin="15dp"
Android:shrinkColumns="1"
Android:stretchColumns="*" >
<TableRow
Android:id="@+id/tableRow1"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="5dp" >
</TableRow>
<TableRow
Android:id="@+id/tableRow2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/CurrentAddress"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Current Address:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_CurrentAddress"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:inputType="textMultiLine"
Android:text="Current Address"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow3"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/PermanentAddress"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Permanent Address:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_PermanentAddress"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:inputType="textMultiLine"
Android:text="Permanent Address"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow4"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/Email"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Email:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_Email"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Email Address"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow5"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/PhoneNumber"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Phone Number:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_PhoneNumber"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Phone Number"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow6"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/BirthDate"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Date of Birth:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_BirthDate"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="BirthDate"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow7"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/Gender"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Gender:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_Gender"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Gender"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow8"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/Education"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Education:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_Education"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Education"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow9"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/Qualification"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Qualification:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_Qualification"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Qualification"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow10"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/BloodGroup"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="BloodGroup:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_BloodGroup"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="BloodGroup"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
<TableRow
Android:id="@+id/tableRow11"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginTop="10dp" >
<TextView
Android:id="@+id/MaritalStatus"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="MaritalStatus:"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="bold" />
<TextView
Android:id="@+id/txt_MaritalStatus"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="MaritalStatus"
Android:textColor="#000000"
Android:textSize="15sp"
Android:textStyle="normal" />
</TableRow>
</TableLayout>
<!-- <Button
Android:id="@+id/addContact"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:text="Add To Contact"
Android:textStyle="bold"
Android:visibility="invisible" /> -->
</LinearLayout>
</Android.support.v4.widget.NestedScrollView>
<Android.support.design.widget.FloatingActionButton
Android:id="@+id/fab"
Android:layout_margin="16dp"
app:layout_anchor="@id/app_bar_layout"
app:layout_anchorGravity="bottom|right|end"
Android:clickable="true"
Android:src="@drawable/addtocontact"
style="@style/FabStyle"
/>
</Android.support.design.widget.CoordinatorLayout>
app:layout_collapseMode="pin"
_を使用して、ビューが折りたたまれている間、ツールバー自体が画面上部に固定されたままになるようにします。CollapsingToolbarLayout
とツールバーを一緒に使用すると、レイアウトが完全に表示されるとタイトルが自動的に大きく表示され、折りたたまれるとデフォルトのサイズに移行します。これらの場合、ツールバー自体ではなく、CollapsingToolbarLayout
でsetTitle()
を呼び出す必要があることに注意してください。
実装の詳細については、 Android Developers
ブログ またはパッケージの詳細 CollapsingToolbarLayout