Android CollapsingToolbarLayout 折叠监听器

标签 android android-design-library android-collapsingtoolbarlayout

我将 CollapsingToolBarLayoutAppBarLayoutCoordinatorLayout 一起使用,它们完全可以正常工作。我将我的 Toolbar 设置为在向上滚动时固定,我想知道是否有办法更改工具栏的标题文本,当 CollapsingToolBarLayout 它已折叠。

总结一下,当滚动展开时,我想要两个不同的标题

提前谢谢大家

最佳答案

我分享了基于@Frodio Beggins 和@Nifhel 代码的完整实现:​​

public abstract class AppBarStateChangeListener implements AppBarLayout.OnOffsetChangedListener {

    public enum State {
        EXPANDED,
        COLLAPSED,
        IDLE
    }

    private State mCurrentState = State.IDLE;

    @Override
    public final void onOffsetChanged(AppBarLayout appBarLayout, int i) {
        if (i == 0) {
            if (mCurrentState != State.EXPANDED) {
                onStateChanged(appBarLayout, State.EXPANDED);
            }
            mCurrentState = State.EXPANDED;
        } else if (Math.abs(i) >= appBarLayout.getTotalScrollRange()) {
            if (mCurrentState != State.COLLAPSED) {
                onStateChanged(appBarLayout, State.COLLAPSED);
            }
            mCurrentState = State.COLLAPSED;
        } else {
            if (mCurrentState != State.IDLE) {
                onStateChanged(appBarLayout, State.IDLE);
            }
            mCurrentState = State.IDLE;
        }
    }

    public abstract void onStateChanged(AppBarLayout appBarLayout, State state);
}

然后你就可以使用它了:

appBarLayout.addOnOffsetChangedListener(new AppBarStateChangeListener() {
    @Override
    public void onStateChanged(AppBarLayout appBarLayout, State state) {
        Log.d("STATE", state.name());
    }
});

关于Android CollapsingToolbarLayout 折叠监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31682310/

相关文章:

java - HTTP 和套接字 :

javax.net.ssl.SSLException : Connection closed by peer on 4. 4.2 设备(适用于 6.0.1)

android - TextInputLayout 中的错误文本被键盘覆盖

android - TabLayout(Android 设计库)文本颜色

android - CollapsingToolbarLayout 箭头颜色

java - BadParcelableException : ClassNotFoundException

安卓网络请求

android - 视差图像在支持库 24.2.0 上未正确显示

Android:CollapsingToolbarLayout 居中扩展文本但不折叠文本

android - 状态栏下的 MapView 带有 CollapsingToolbarLayout