【问题标题】:umano AndroidSlidingUpPanel Resize Main Contentumano AndroidSlidingUpPanel 调整主要内容的大小
【发布时间】:2014-01-28 04:18:11
【问题描述】:

已解决:

显然源已更新以添加此功能。在此之前,我分叉了源来执行此操作,并在方向更改时设置一个关闭标志。我的叉子位于 github.com/Style87/AndroidSlidingUpPanel。我认为我的更改没有被拉入主分支,我不会让它保持最新。

原来的问题: 我正在使用umano AndroidSlidingUpPanel 库。我的主要内容视图是一个谷歌地图片段,滑动面板是一个带有来自标记点击的动态内容的线性布局。单击标记时,滑动面板打开到锚点。当滑动面板停止时,我想重新调整主要内容的大小以填充剩余空间,使地图的底部与滑动面板的顶部对齐。幻灯片停止后,如何将主要内容重新调整为剩余空间?

欢迎使用修改demo进行讲解。

【问题讨论】:

  • 你做到了吗?我需要类似的功能和另一个在this question of me 中描述的功能。很抱歉在此处添加此评论。但这是我用 umano AndroidSlidingUpPanel 在 SO 中发现的唯一问题。如果您已经完成,请分享您的解决方案。
  • 显然源已更新以添加此功能。在此之前,我还更新了源代码以执行此操作,并在方向更改时设置一个关闭标志。我的叉子在github.com/Style87/AndroidSlidingUpPanel。我认为我的更改没有被拉入主分支,我不会让它保持最新状态。
  • 嘿,我尝试使用新的 3.0.0 版本的滑块,但是这个 setOverlay 属性根本没有调整主要内容的高度。你有什么想法吗?
  • @RogerSmith 我在这里遇到了类似的问题-stackoverflow.com/questions/36985119/…
  • 这个库有很多问题。它不是最新的。我建议这个替代方案:github.com/drxeno02/androidprojects-book2-slidingdrawer

标签: android


【解决方案1】:

通过将 overlay 属性设置为 true,该库已更新以支持您的用例。

【讨论】:

【解决方案2】:

如果您可以编辑库,这里有一个解决方案。而不是SlidingUpPanelLayout.java的第495行,即;

height -= panelHeight;

使用以下代码

int tempHeight = height;

if(isAnchored()){
    // "x" is the height of sliding panel when it is Anchored
    height = x;
}else{
    height -= panelHeight;
}

假设您能够计算 x 值。

【讨论】:

    【解决方案3】:

    默认情况下,面板会向上推送主要内容。您可以使用 setOverlayed 方法或 umanoOverlay 属性使其覆盖主要内容。如果您想让滑动布局半透明,这很有用。您还可以将 umanoClipPanel 设置为 false 以使面板在非叠加模式下透明。

    Umano github wiki

    将 sothree:umanoOverlay 值设置为 false。 例子

    `sothree:umanoOverlay="false"`
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多