6

Android Support Design Libraryがリリースされた後、Twitter のプロフィールToolbarのページのように、画面を縦にスクロールするtitleと とが変化するようなエフェクトを実装したいと考えていました。subtitleそこで、Android Support Design Library の 、 、および を使用して、この効果を実現しようCoordinatorLayoutAppBarLayoutましCollapsingToolbarLayoutた。のコンテンツを希望どおりに表示または変更できなかったことを除いて、すべてが期待どおりに機能しました。、、、ofを表示したかったはずですが、レイアウトとプログラムで設定しても表示されませんでした。ブログに書いてある通り、ToolbarToolbarcollapseIconnavigationIcontitlesubtitleToolbar

このような場合、ツールバー自体ではなく、CollapsingToolbarLayout で setTitle() を呼び出す必要があることに注意してください。

ドキュメントを確認した場合CollapsingToolbarLayout、 の設定にのみ焦点を当てていることがわかりますが、 、およびtitleについては何もできません。collapseIconnavigationIconsubtitle

Toolbarそれで、誰かがandによってこの効果を達成する方法を教えてもらえますCollapsingToolbarLayoutか? 彼らができなかったとしたら、他に何ができるでしょうか? 誰でもこれについて何か考えがありますか?

ヒントをいただければ幸いです。前もって感謝します。

4

2 に答える 2

2

この問題はバグとして報告されました私は自分のアプリの 1 つでこれを個人的に経験しました。ツールバーの設定はtopMargin私にとってはうまくいきます。誰かがバグ レポートにコメントしたように、問題レポートの機能としての修正を次に示します。

private void fixApi21ToolBarBug(Toolbar toolbar){
    if(Build.VERSION.SDK_INT!=21) return; //only on api 21
    final int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
    final int result = (resourceId > 0) ? getResources().getDimensionPixelSize(resourceId) * 2 : 0;
    final CollapsingToolbarLayout.LayoutParams params = (CollapsingToolbarLayout.LayoutParams) toolbar.getLayoutParams();
    params.topMargin -= result;
    toolbar.setLayoutParams(params);
}

結果はこちらをご覧ください。

ここに画像の説明を入力

于 2015-07-19T06:07:59.353 に答える
1

同じ問題に遭遇しました。私にとってはandroid:fitsSystemWindows="true"、レイアウトパラメータから を削除することで修正されました。ただし、これはステータス バーが折りたたみツールバーの背景の一部にならないことを意味します。

于 2015-07-09T12:31:48.870 に答える