Tag: swiperefreshlayout

Android:CoordinatorLayout和SwipeRefreshLayout

我尝试从新的支持库22.2.0实现自动隐藏工具栏function。 没有SwipeRefreshLayout工作正常: 但是当我重新添加这个布局,工具栏重叠 recyclerview: 码: <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:fab="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:theme="@style/ThemeOverlay.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" app:layout_scrollFlags="scroll|enterAlways"/> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swipe_container" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.RecyclerView android:id="@+id/cardList" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"/> </android.support.v4.widget.SwipeRefreshLayout> </android.support.design.widget.CoordinatorLayout> </android.support.v4.widget.DrawerLayout> 任何想法如何解决这个问题?

SwipeRefreshLayout在向下滑动时禁用拖动animation

是否可以禁用SwipeRefreshLayout拖动animation不需要类定制?

以编程方式触发SwipeRefreshLayout触发器

有没有办法以编程方式触发SwipeRefreshLayout ? animation应该开始, OnRefreshListener接口的onRefresh方法应该被调用。

RecyclerView和SwipeRefreshLayout

我在SwipeRefreshLayout使用了新的RecyclerView-Layout ,并且遇到了一个奇怪的行为。 当滚动列表返回到顶部有时顶部的视图被切入。 如果我现在尝试滚动到顶部 – 拉到刷新触发器。 如果我尝试删除回收站周围的刷卡刷新布局 – 查看问题已经消失。 而且可以在任何手机上重现(不仅是L-Preview设备)。 <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/contentView" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="gone"> <android.support.v7.widget.RecyclerView android:id="@+id/hot_fragment_recycler" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" /> </android.support.v4.widget.SwipeRefreshLayout> 这是我的布局 – 行由RecyclerViewAdapterdynamic构build(2列表中的Viewtypes)。 public class HotRecyclerAdapter extends TikDaggerRecyclerAdapter<GameRow> { private static final int VIEWTYPE_GAME_TITLE = 0; private static final int VIEWTYPE_GAME_TEAM = 1; @Inject Picasso picasso; public HotRecyclerAdapter(Injector injector) { super(injector); } @Override […]

SwipeRefreshLayout + ViewPager,仅限水平滚动?

我在我的应用程序中实现了SwipeRefreshLayout和ViewPager ,但是有一个很大的麻烦:每当我要向左/向右滑动来切换页面时,滚动过于敏感。 向下轻扫一下也会触发SwipeRefreshLayout刷新。 我想设置水平滑动开始的限制,然后强制水平,直到刷卡结束。 换句话说,当手指水平移动时,我想取消垂直翻转。 这个问题只发生在ViewPager ,如果我向下滑动并触发SwipeRefreshLayout刷新function(显示条),然后水平移动我的手指,它仍然只允许垂直滑动。 我试图扩展ViewPager类,但它根本不工作: public class CustomViewPager extends ViewPager { public CustomViewPager(Context ctx, AttributeSet attrs) { super(ctx, attrs); } @Override public boolean onInterceptTouchEvent(MotionEvent ev) { boolean in = super.onInterceptTouchEvent(ev); if (in) { getParent().requestDisallowInterceptTouchEvent(true); this.requestDisallowInterceptTouchEvent(true); } return false; } } 布局xml: <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/viewTopic" android:layout_width="match_parent" android:layout_height="match_parent"> <com.myapp.listloader.foundation.CustomViewPager android:id="@+id/topicViewPager" android:layout_width="match_parent" android:layout_height="match_parent"/> </android.support.v4.widget.SwipeRefreshLayout> 任何帮助将不胜感激,谢谢

Android:CollapsingToolbarLayout和SwipeRefreshLayout卡住了

我一起使用CollapsingToolbarLayout,RecyclerView和SwipeRefreshLayout: XML: <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.CoordinatorLayout android:id="@+id/coordinator_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="@dimen/collapse_toolbar_height" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:contentScrim="?attr/colorPrimary" android:fitsSystemWindows="true" app:expandedTitleMarginStart="48dp" app:expandedTitleMarginEnd="64dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/toolbar_image" android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="centerCrop" android:fitsSystemWindows="true" app:layout_collapseMode="parallax" /> <include layout="@layout/activity_main_toolbar"/> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe_container" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <cz.yetanotherview.webcamviewer.app.helper.EmptyRecyclerView android:id="@+id/mainList" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="vertical" /> </android.support.v4.widget.SwipeRefreshLayout> <android.support.design.widget.FloatingActionButton android:id="@+id/floating_action_button" […]

SwipeRefreshLayout setRefreshing()最初没有显示指标

我有一个非常简单的布局,但是当我在片段的onActivityCreated()中调用setRefreshing(true)时,它不会最初显示。 它只显示当我做拉刷新。 任何想法,为什么最初没有显示? 片段xml: <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe_container" 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"> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> </RelativeLayout> </ScrollView> </android.support.v4.widget.SwipeRefreshLayout> 片段代码: public static class LinkDetailsFragment extends BaseFragment implements SwipeRefreshLayout.OnRefreshListener { @InjectView(R.id.swipe_container) SwipeRefreshLayout mSwipeContainer; public static LinkDetailsFragment newInstance(String subreddit, String linkId) { Bundle args = new Bundle(); args.putString(EXTRA_SUBREDDIT, subreddit); args.putString(EXTRA_LINK_ID, linkId); LinkDetailsFragment fragment = new LinkDetailsFragment(); […]

在刷新过程中使用SwipeRefreshLayout切换片段时,片段冻结但实际上仍然工作

更新:我认为它工作正常。 但经过一些testing麻烦依然存在*嗅探* 然后,我做了一个更简单的版本,看看究竟发生了什么,我才知道应该被分离的清爽片段仍然留在那里。 或者确切地说,旧片段的视图在新片段的顶部 。 由于RecyclerView的我的原始应用程序的背景是不透明的,所以原来我之前说过的。 更新结束 我有这样的布局的MainActivity : <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <!– As the main content view, the view below consumes the entire space available using match_parent in both dimensions. –> <FrameLayout android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" /> <!– android:layout_gravity="start" tells DrawerLayout to treat this as a sliding drawer on the left side […]

SwipeRefreshLayout中的Horizo​​ntalScrollView

我在我的应用程序中实现了新的SwipeRefreshLayout组件,并且它适用于任何垂直视图,如ListView , GridView和ScrollView 。 水平视图的行为非常糟糕,比如HorizontalScrollView 。 当滚动到右侧或左侧时, SwipeRefreshLayout视图caching触摸,防止HorizontalScrollView接收并垂直滚动以执行刷新。 我试着解决这个问题,因为我以前用ViewPager解决垂直ScrollView问题,使用requestDisallowInterceptTouchEvent但它没有工作。 我也注意到这个方法在原来的SwipeRefreshLayout类中被覆盖而没有返回超类。 谷歌的开发人员留下了一个评论,而不是“/ / //Nope. ” 由于SwipeRefreshLayout组件是相对较新的,我找不到一个解决scheme,修复了水平滚动问题,同时仍然允许刷新视图来跟踪和处理垂直滚动,所以我想我会分享我的解决scheme,希望它会让别人一两个小时。