我在Activity中使用了CollapsingToolbarLayout的AppBarLayout标准实现。
我按照此link仅在折叠时显示CollapsingToolbarLayout标题:
mAppBarLayout.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() {
boolean mIsShow = false;
@Override
public void onOffsetChanged(AppBarLayout appBarLayout, int verticalOffset) {
float percentage = ((float) Math.abs(verticalOffset) / appBarLayout.getTotalScrollRange());
if (!mIsShow && percentage == 1) {
mCollapsingToolbarLayout.setTitle(mToolbarTitleText);
mIsShow = true;
LogUtils.LOGD("XXXX", "SHOW =" + mToolbarTitleText);
} else if (mIsShow && percentage != 1) {
mCollapsingToolbarLayout.setTitle(" ");
mIsShow = false;
LogUtils.LOGD("XXXX", "HIDE");
}
}
});
这非常有效,除非我在移动设备的开发者选项中设置不要保持活动:当我回到此活动时,会一直隐藏CollapsingToolbarLayout标题。我无法理解为什么因为日志正确显示。