在android.support.design.widget.AppBarLayout中,android.support.v4.widget.SwipeRefreshLayout不会滑动

时间:2016-10-11 06:18:50

标签: android android-layout android-toolbar android-appbarlayout coordinator-layout

目标是折叠toolbarSwipeRefreshLayout,其中包含项目。为了能够使用支持库,我使用CoordinatorLayout来托管AppBarLayoutAppBarLayouttoolbarSwipeRefreshLayout,其中包含网格视图。使用app:layout_scrollFlags="scroll|enterAlways"折叠并打开toolbar没有问题,但是SwipeRefreshLayout不会一直向下滑动,即卡住了。从SwipeRefreshLayout中取出AppBarLayout时,它滚动得很好,但这次工具栏不会崩溃。下面是布局xml。任何帮助表示赞赏。

PS:我使用this link来折叠工具栏实现:

这是我的布局:

<android.support.design.widget.CoordinatorLayout                                                                     
    xmlns:android="http://schemas.android.com/apk/res/android"                                                       
    xmlns:app="http://schemas.android.com/apk/res-auto"                                                              
    android:layout_height="match_parent"                                                                             
    android:layout_width="match_parent">                                                                

    <android.support.design.widget.AppBarLayout                                                                      
        android:id="@+id/appBarLayout"                                                                               
        android:layout_width="match_parent"                                                                          
        android:layout_height="wrap_content">                                                                        

        <android.support.v7.widget.Toolbar                                                                               
            android:id="@+id/toolbar"                                                                                    
            android:layout_width="match_parent"                                                                          
            android:layout_height="50dp"                                                                                 
            app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"                                                     
            android:background="@color/primary_dark"                                                                     
            app:layout_scrollFlags="scroll|enterAlways">                                                                                                                                             
        </android.support.v7.widget.Toolbar>                                                                             

        <android.support.v4.widget.SwipeRefreshLayout                                                                    
            xmlns:android="http://schemas.android.com/apk/res/android"                                                   
            android:id="@+id/swiperefresh"                                                                               
            android:layout_width="match_parent"                                                                          
            android:layout_height="match_parent"                                                                         
            app:layout_behavior="@string/appbar_scrolling_view_behavior">                                                

            <GridView                                                                                                    
                android:id="@+id/gridview"                                                                               
                android:layout_width="match_parent"                                                                      
                android:layout_height="match_parent"                                                                     
                android:verticalSpacing="2dp"                                                                            
                android:horizontalSpacing="2dp"                                                                          
                android:paddingLeft="@dimen/activity_horizontal_margin"                                                  
                android:paddingRight="@dimen/activity_horizontal_margin"                                                 
                android:paddingTop="@dimen/activity_vertical_margin"                                                     
                android:paddingBottom="@dimen/activity_vertical_margin"                                                  
                android:stretchMode="columnWidth"                                                                        
                android:numColumns="2"/>                                                                                                                                                           
        </android.support.v4.widget.SwipeRefreshLayout>                                                                  

    </android.support.design.widget.AppBarLayout>                                                                    

</android.support.design.widget.CoordinatorLayout> 

1 个答案:

答案 0 :(得分:-1)

meybe android.support.v4.widget.SwipeRefreshLayout仅支持内部的Linearlayout

我的布局:     

  <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <ImageView
            android:id="@+id/iv_main"
            android:layout_width="200dp"
            android:layout_height="200dp"
            android:src="@drawable/cat"/>
    </LinearLayout>
</com.activity.com.swiperfreshlayout.PullToRefreshScrollView>