3

我正在探索https://github.com/umano/AndroidSlidingUpPanel库。当我滑动底部面板时,在滑动完成时它会获得完整的屏幕区域。

谁能帮助我,如何将底部面板停止到某个高度,例如将其滑动到屏幕中间?

4

3 回答 3

7

您是否考虑过使用setAnchorPoint(float)

来自 SlidingUpPanelDemo 项目中的 DemoActivity

SlidingUpPanelLayout layout = (SlidingUpPanelLayout) findViewById(R.id.sliding_layout);
layout.setAnchorPoint(0.3f);

这将使面板滑动到屏幕高度的 30%。

于 2014-01-13T15:57:33.213 回答
4

你可以添加 android:layout_weight="0.85"

到 SlidingUpPanelLayout 的第二个孩子

于 2018-09-03T11:58:19.423 回答
4

+1 @Guilio Prina Ricotti 回答。为了使它工作,在你打电话后

SlidingUpPanelLayout layout = (SlidingUpPanelLayout)findViewById(R.id.sliding_layout);
layout.setAnchorPoint(0.3f);

在代码中,它会触发您的滑动布局(例如,onClickListener),而不是调用slidingLayout.setPanelState(SlidingUpPanelLayout.PanelState.EXPANDED); call

slidingLayout.setPanelState(SlidingUpPanelLayout.PanelState.ANCHORED);

也不要忘记让你的滑动组件的高度为match_parent

于 2016-01-12T14:54:26.603 回答