我有一个滑动窗格布局,其中包含一个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) 我正在使用来自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) 我想创建一个包含两个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可以独立滚动,但是我需要整个布局只能滚动(因此,首先滚动到第一部分,然后滚动到第二部分)。我试图把它包起来ScrollView和NestedScrollView,但我得到的最接近的是滚动不流畅的动画效果。
我的问题是,这种方法是否有效?如果是,是否有增加平滑滚动的方法NestedScrollView?还是应该使用另一种方法来实现此目的,例如创建ListView包含两个项目的布局,布局中包含TextView和RecyclerView?
ListView
清单项目1
清单项目2
从性能的角度来看,我认为这种方法不好。我对吗?我只需要为此找到最佳实践。谢谢。
我正在开发应用程序并在我的项目自定义视图中使用 SlidingUpPanelLayout ( https://github.com/umano/AndroidSlidingUpPanel ) 在我的情况下,功能之一时刻面板必须不可拖动(以防内容为全屏模式)。我怎样才能做到这一点?
谢谢
我使用 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
我正在尝试使用 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