标签: slidingpanelayout

禁用SlidingPaneLayout的滑动手势

我有一个滑动窗格布局,其中包含一个ListView.我有一个按钮来打开滑动窗格.因此,我想禁用此滑动窗格的滑动手势,当我尝试访问同一布局中的任何其他视图时,这会产生问题.

反正只有禁用滑动手势并且按钮功能应该有效吗?它应该像往常一样在按钮点击时打开和关闭滑动窗格.

以下是我的XML布局的一部分:

<android.support.v4.widget.SlidingPaneLayout
    android:id="@+id/sliding_pane_layout_accountHome"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffffff" >

    <LinearLayout
        android:layout_width="280dp"
        android:layout_height="match_parent"
        android:orientation="vertical" 
        android:background="#FFFFFF">

        <ListView
            android:id="@+id/lv_menuList"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

    </LinearLayout>
</android.support.v4.widget.SlidingPaneLayout>
Run Code Online (Sandbox Code Playgroud)

这是按钮功能的代码

slidingLayout1 = (SlidingPaneLayout) findViewById(R.id.sliding_pane_layout_accountHome);
slidingLayout1.openPane();

iv_menu=(ImageView)findViewById(R.id.iv_menu);
    iv_menu.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) 
        {
            if(slidingLayout1.isOpen()==true)
            {
                slidingLayout1.closePane();
            }
            else
            {
                slidingLayout1.openPane();
            }

        }
    });
Run Code Online (Sandbox Code Playgroud)

android swipe-gesture slidingpanelayout

4
推荐指数
1
解决办法
3663
查看次数

向上滑动面板布局侦听器实现。次要版面可见性问题

我正在使用来自umano https://github.com/umano/AndroidSlidingUpPanel的向上滑动面板。我面临一个小而愚蠢的问题,但无法解决。滑动面板的辅助布局具有文本视图。当我通过向上拖动来扩展它时,我希望textView减慢淡入淡出和消失(如SoundCloud音乐应用程序中一样)。当我将其向下拖动时,textView应该再次可见。如何解决?我尝试了很多,但失败了。[![在此处输入图片描述] [1]] [1]

向上滑动的面板用红色标记。

MainActivity.java

 slidingUpPanelLayout = 
(SlidingUpPanelLayout)findViewById(R.id.sliding_layout);


    slidingUpPanelLayout.addPanelSlideListener(new 
SlidingUpPanelLayout.PanelSlideListener() {
        @Override
        public void onPanelSlide(View panel, float slideOffset) {

            SongNameSlide.setVisibility(panel.INVISIBLE);
            ArtistNameSlide.setVisibility(panel.INVISIBLE);
            buttonabc.setVisibility(panel.INVISIBLE);

        }

        @Override
        public void onPanelStateChanged(View panel, 
SlidingUpPanelLayout.PanelState previousState, SlidingUpPanelLayout.PanelState newState) {
            if(newState.equals(SlidingUpPanelLayout.PanelState.EXPANDED)&& 
previousState.equals(SlidingUpPanelLayout.PanelState.COLLAPSED)){
                SongNameSlide.setVisibility(panel.GONE);
                ArtistNameSlide.setVisibility(panel.GONE);
                buttonabc.setVisibility(panel.GONE);
                slidingUpPanelLayout.setDragView(panel);


            }

        else {

                SongNameSlide.setVisibility(panel.VISIBLE);
                ArtistNameSlide.setVisibility(panel.VISIBLE);
                buttonabc.setVisibility(panel.VISIBLE);
            }
        }
    });

    slidingUpPanelLayout.setFadeOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

 slidingUpPanelLayout.setPanelState (SlidingUpPanelLayout.PanelState.COLLAPSED);
        }
    });
Run Code Online (Sandbox Code Playgroud)

android slidingpanelayout

4
推荐指数
1
解决办法
1427
查看次数

如何在一个布局中实现多个recyclerviews?

我想创建一个包含两个RecyclerViews 的窗格(比如说“ MyItems”,“ AllItems”)。我创建了垂直的LinearLayout,其中有TextView作为标题和RecyclerView。像这样:

在此处输入图片说明

 <LinearLayout ... >

    <TextView
        android:text="My Items"
        ... />

    <android.support.v7.widget.RecyclerView
        android:id="@+id/my_items"
        ... />

    <TextView
        android:text="All Items"
        ... />

    <android.support.v7.widget.RecyclerView
        android:id="@+id/all_items"
        ... />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

但是,使用这种方法,只有recyclerViews可以独立滚动,但是我需要整个布局只能滚动(因此,首先滚动到第一部分,然后滚动到第二部分)。我试图把它包起来ScrollViewNestedScrollView,但我得到的最接近的是滚动不流畅的动画效果

我的问题是,这种方法是否有效?如果是,是否有增加平滑滚动的方法NestedScrollView?还是应该使用另一种方法来实现此目的,例如创建ListView包含两个项目的布局,布局中包含TextViewRecyclerView

ListView

  • 清单项目1

    • 标题1
    • RecyclerView 1
  • 清单项目2

    • 标题2
    • RecyclerView2

从性能的角度来看,我认为这种方法不好。我对吗?我只需要为此找到最佳实践。谢谢。

performance android slidingpanelayout android-recyclerview

3
推荐指数
1
解决办法
3396
查看次数

SlidingUpPanelLayout 如何使不可拖动

我正在开发应用程序并在我的项目自定义视图中使用 SlidingUpPanelLayout ( https://github.com/umano/AndroidSlidingUpPanel ) 在我的情况下,功能之一时刻面板必须不可拖动(以防内容为全屏模式)。我怎样才能做到这一点?

谢谢

android custom-controls slidingpanelayout

2
推荐指数
1
解决办法
1830
查看次数

如何让滑动面板中的元素监听点击事件

我使用 AndroidSlidingPanel 库“ https://github.com/umano/AndroidSlidingUpPanel ”创建了一个演示应用程序,并将textview 作为孩子。问题是当我尝试单击标签面板向下滑动时无法单击标签。

<com.sothree.slidinguppanel.SlidingUpPanelLayout
xmlns:sothree="http://schemas.android.com/apk/res-auto"
android:id="@+id/sliding_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom"
sothree:panelHeight="68dp"
sothree:shadowHeight="4dp">

<TextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:text="Main Content"
    android:textSize="16sp" />

<TextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center|top"
    android:text="The Awesome Sliding Up Panel"
    android:textSize="16sp" 
    android:onClick="ClickedOnLabel"
    android:clickable="true"/>
Run Code Online (Sandbox Code Playgroud)

我遇到过类似的帖子“无法单击 SlidingUpPanelLayout 中的子按钮”,但不明白 setdragview 是什么?它有什么作用?

任何人都可以抛出一些光应该怎么做?

android android-layout android-fragments android-activity slidingpanelayout

2
推荐指数
1
解决办法
3609
查看次数

Android SlidingPaneLayout 淡入淡出

我正在尝试使用 SlidingPaneLayout 的原型应用程序。我的 SlidingPaneLayout 是灰色的,身体视图是纯白色的。但是当我滑入时,正文页面的小可见区域会变暗或覆盖深色屏幕。我想要的只是那个身体视图的纯原始白色。

我尝试了几种方法来关闭这些,但似乎不可能。如

SlidingPaneLayout sp = (SlidingPaneLayout) findViewById(R.id.mainSlider);
sp.setHorizontalFadingEdgeEnabled(false);
Run Code Online (Sandbox Code Playgroud)

或 XML 中的以下属性

<android.support.v4.widget.SlidingPaneLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/mainSlider"
    android:requiresFadingEdge="none" <!-- try one -->
    android:fadingEdgeLength="0dp"  <!-- try two -->
    android:fadingEdge="none"  <!-- try three -->
    tools:context=".MainActivity">
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

在此处输入图片说明

你们中的任何一个,你曾经成功过吗?

xml android android-layout android-fragments slidingpanelayout

1
推荐指数
1
解决办法
966
查看次数