Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 底部行为可以';在查看页面上不能折叠_Android_Bottom Sheet - Fatal编程技术网

Android 底部行为可以';在查看页面上不能折叠

Android 底部行为可以';在查看页面上不能折叠,android,bottom-sheet,Android,Bottom Sheet,我在viewpager中有3个Fragment的页面。在片段中包含行为。我设置的默认状态是state\u EXPANDED 在每一页中,我都会拖动面板使其折叠。以下是场景: 在第1页中:将面板拖到底部(状态变为状态\u折叠) 第2页中的:将面板拖到底部(状态变为状态\u COLLAPSE) 第3页中的:将面板拖到底部(状态变为状态\u折叠) 问题 当我回到第1页时面板会自行展开(状态_展开)。在第1页中,它应该仍然是状态_COLLAPSE 相反,如果我从第1页转到第3页,则第3页的面板将自动向

我在
viewpager
中有3个
Fragment的
页面。在
片段中
包含
行为
。我设置的默认状态是
state\u EXPANDED

在每一页中,我都会拖动面板使其折叠。以下是场景:

在第1页中:将面板拖到底部(状态变为
状态\u折叠

第2页中的:将面板拖到底部(状态变为
状态\u COLLAPSE

第3页中的:将面板拖到底部(状态变为
状态\u折叠


问题

当我回到第1页时面板会自行展开(
状态_展开
)。在第1页中,它应该仍然是
状态_COLLAPSE

相反,如果我从第1页转到第3页,则第3页的面板将自动向上(
状态扩展

所以我认为每两页中面板都会自动上升


我的问题是:根据我上面的问题,在我自己拖动之前,如何使面板仍然塌陷(
状态_塌陷

以下是我当前的代码:


视图寻呼机将当前片段左侧或右侧的片段保留在内存中。这意味着当您在第一个片段中时,只有第二个片段在内存中,第三个片段只有在您向右滑动时才会创建


当你在第三个片段时也会发生同样的事情,只有第二个片段在内存中(紧靠它的那个片段,而不是第一个片段)。只有向左滑动时,才会重新创建第一个片段并将其放入内存。

默认情况下,viepager仅加载当前片段两侧的一个片段。为了克服这个问题,您可以通过如下方式手动设置要加载的片段数量

viewPager.setOffscreenPageLimit(2);

这里的
2
可以根据您的需要进行更改

您在哪里实现了底部表单,是否在具有查看页面的父活动中?正好在片段上,先生。我在viewPager的每个页面中使用的片段您应该在容器活动或片段中实现它尝试类似以下内容
viewPager.setOffscreenPageLimit(2)2是什么意思?意味着viewpager将始终在每个页面中加载2页direction@Nilabja作品把你的答案贴出来,伙计。
viewPager.setOffscreenPageLimit(2);