【问题标题】:Positioning AndroidSlidingUpPanel to a specific height将 AndroidSlidingUpPanel 定位到特定高度
【发布时间】:2013-08-19 14:25:55
【问题描述】:

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

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

【问题讨论】:

  • 我现在遇到了同样的问题,请问您找到解决方案了吗?

标签: android slidingdrawer android-sliding bottom-up


【解决方案1】:

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

到您的 SlidingUpPanelLayout 的第二个孩子

【讨论】:

  • 我知道已经很晚了,但这有帮助!
  • @revipod 我很高兴它帮助了你
【解决方案2】:

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

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

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

slidingLayout.setPanelState(SlidingUpPanelLayout.PanelState.ANCHORED);

另外别忘了让你的滑动组件的高度为match_parent

【讨论】:

  • 我想问一件事,我使用setAnchorPoint(0.5f) 方法将滑动面板锚定到屏幕高度的一半,向上。但是当我开始向上拖动面板时,它会向上移动。我的要求是我不想向上滑动面板,我只希望布局在我向上拖动时锚定到屏幕的一半,当我向下拖动时,它应该向下滑动面板
  • @SamarthKejriwal,你找到解决方案了吗,我也有同样的要求,但无法接缝让它以这种方式工作
  • 我,担心您将不得不使用另一个库或为此编写自己的组件。我没有找到办法。
【解决方案3】:

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

来自 SlidingUpPanelDemo 项目中的 DemoActivity

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

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

【讨论】:

  • 锚点设置是否有效??我无法通过设置锚点来限制滑动。
  • 它可以工作,但只显示底部面板的一半。有没有根据上滑面板的变化调整底部面板大小的解决方案
猜你喜欢
  • 2012-01-05
  • 2013-07-21
  • 2016-10-08
  • 1970-01-01
  • 2018-06-05
  • 2018-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多