【问题标题】:Making panel at the top disappear after sliding up in Umano SlidingUpPanel在 Umano SlidingUpPanel 中向上滑动后使顶部的面板消失
【发布时间】:2019-01-07 22:00:38
【问题描述】:

我正在为我的应用程序使用 Umano SlidingUpPanel 库 (https://github.com/umano/AndroidSlidingUpPanel),它非常适合。但是,向上滑动panel 后,它会移动到页面的top(默认情况下)。从第一个视图的底部向上滑动后,有什么方法可以使顶部的面板完全消失?

【问题讨论】:

  • 顶部的面板是指状态栏(显示通知的位置)吗?
  • @drilonreqica 我已经在帖子中添加了第一个视图和滑动后视图的照片。您可以通过点击“面板”和帖子中突出显示的“顶部”字词来查看图片。

标签: android android-studio


【解决方案1】:

根据 AndroidSlidingUpPanel 的文档,最简单的解决方案是监听 PanelState 的变化,并在扩展时设置您希望 GONE 不可见的面板的可见性,反之亦然。

代码如下:

slidingPanelLayout = (SlidingUpPanelLayout) findViewById(R.id.sliding_layout);
slidingPanelLayout.addPanelSlideListener(new PanelSlideListener() {
        @Override
        public void onPanelSlide(View panel, float slideOffset) {

        }

        @Override
        public void onPanelStateChanged(View panel, PanelState previousState, PanelState newState) {
            if (newState == PanelState.EXPANDED) {
                //here you can set the visibility of the panel you want to hide to GONE
            } else {
                //and here you would set the panel to VISIBLE again
            }
        }
    });

我还有一个建议是使用 BottomSheetDialogFragment,它是针对此类用例的原生 android 解决方案。

https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment

https://medium.com/@kosta.palash/using-bottomsheetdialogfragment-with-material-design-guideline-f9814c39b9fc

【讨论】:

  • 很好,我可以帮忙。请您接受我的答案作为已接受的答案:)
  • 是的,当然!如果您也这样投票我的问题,将不胜感激。
猜你喜欢
  • 2014-01-03
  • 2014-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-18
相关资源
最近更新 更多