将AndroidSlidingUpPanel定位到特定高度

问题描述 投票:2回答:3

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

任何人都可以帮助我,如何将底部面板停在一定高度,例如将它滑到屏幕中间?

android slidingdrawer android-sliding bottom-up
3个回答
5
投票

你考虑过使用setAnchorPoint(float)吗?

来自SlidingUpPanel演示项目中的演示活动

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

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


4
投票

+1到@Guilio Prina Ricotti回答。在你打电话之后让它发挥作用

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

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

slidingLayout.setPanelState(SlidingUpPanelLayout.PanelState.ANCHORED);

另外,不要忘记让滑动组件的高度为match_parent


0
投票

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

到SlidingUpPanelLayout的第二个孩子

© www.soinside.com 2019 - 2024. All rights reserved.