android - 当我们进入 ListView 的开头时,回收器 View 显示按钮可见

标签 android listview android-activity android-recyclerview

我正在开发一些聊天应用程序,我正在使用回收器 View 来显示消息。问题是我在顶部有加载早期消息按钮,它总是可见的,我不需要。只有当我滚动到顶部( ListView 的第一项可用)时,我才需要按钮可见。然后当我按下加载较早按钮时,它将加载较早的消息并且按钮应该变得不可见。同样,只有当我滚动到 recyclerView 的顶部时,按钮才应该可见。 (这类似于 WhatsApp 加载较早的消息按钮示例)。

注意:我可以加载较早的消息唯一的问题是如何在滚动到顶部时使按钮可见并在加载较早的消息后使其不可见。

帮帮我,伙计们!!!!!!!!!!!! 提前致谢

最佳答案

似乎您需要使用 float 操作按钮 - 检查 android 设计支持库。但是如果你需要它用于带有文本的按钮,你可以用这样的东西来做。

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                if (linearLayoutManager.findFirstVisibleItemPosition() == 0) {
                    button.setVisibility(View.VISIBLE);
                }
                else {
                    button.setVisibility(View.GONE);
                }
            }
        });

在父 View 组中使用 android:animateLayoutChanges="true",您还将看到动画。您也可以尝试使用自定义按钮行为的 CoordinatorLayout。

关于android - 当我们进入 ListView 的开头时,回收器 View 显示按钮可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33256884/

相关文章:

android - 具有自定义 BaseAdapter 的可滚动 ListView 非常慢

android - 如何从 UncaughtExceptionHandler.uncaughtException() 方法启动另一个 Activity ?

java - 算法 HmacPBESHA256 不可用(Flutter 构建失败)

java - 安卓编程;得到一个小错误

android - 通过使用传感器检测用户移动,通过定位服务节省电量

android - ListView 在滚动时崩溃

android - 将 viewGroup 添加到 ListView?

java - 无法将字符串值从一个 java 类传递到另一类

android - 移除Android上的切换 Activity 动画

android - 如何在 Android 中为 GridView 的每个单元格添加颜色?