イニシャルがリムーブ

楽しいことならいっぱい夢見ることならめいっぱい

ioschedのToolbar周りを見てみた

iosched 2018が公開されましたね!知見たっぷり🎉
Tooblar`周りをどうしようか悩んでいたので抜粋。

BottomNavigationViewを使ったときのあれ。

ioschedではActivityToolbarを持つ形ではないようでした。個人的に先入観もありビックリ。

結論から言うと、FragmentAppBarLayoutを持たせる感じでした。 スケジュールタブの場合は

<AppBarLayout>
    <FrameLayout  app:layout_scrollFlags="scroll|snap|exitUntilCollapsed">
        <ImageView  android:layout_gravity="center_vertical|start"/>
        <TextView  android:textAppearance="@style/TextAppearance.IOSched.ToolbarTitle"/>
    </FrameLayout>
    <TabLayout/>
</AppBarLayout>

といった具合です。ガッツリImageViewTextViewも位置指定してました。

ちょっと気になってToolbarのUseageを探してみたところ、ファイルとしてはtoolbar.xmlはあるものの
これどこも使ってないように見受けられます(違ったら教えてほしい!)

UpNavigationが気になる。

ここで気になるのがスケジュール等の詳細のUpNavigation周りになってきます。
Toolbarではなく普通にImageViewでした。わお。

<ImageButton
    android:id="@+id/up"
    android:layout_width="?actionBarSize"
    android:layout_height="?actionBarSize"
    android:layout_gravity="start|top"
    android:background="?selectableItemBackgroundBorderless"
    android:contentDescription="@string/navigate_up"
    app:srcCompat="@drawable/ic_arrow_back" />

こんな具合です。知らなかった。。
スクロールに応じて見えなくなったりもしていたのでてっきりToolbarかと思ってました。
この挙動についてはPushUpScrollListenerで定義されているようです。

感想

Material studiesを見ていると、Toolbar周りの自由度がグッと上がった気がしていて
勝手にToolbarを拡張と考えていましたが、結構筋肉で実装していく感じになるのかな?