0

У меня есть следующий макетAndroid рушится панель инструментов, разрушаться только тогда, когда пользователь прикасается вид ресайклера

[CoordinatorLayout] 
[AppBarLayout] 
    [CollapsingToolbarLayout] 
    [Toolbar] 
    [RelativeLayout/] 
    [/Toolbar] 
    [/CollapsingToolbarLayout] 
[AppBarLayout] 
[RecyclerView/] 
[/CoordinatorLayout] 

коллапсирующая панель работает отлично.

мой взгляд рецикл как этот

<android.support.v7.widget.RecyclerView 
    android:id="@+id/profile_grid" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:background="@color/white" 
    android:overScrollMode="never" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

Когда не хватает деталей вы не можете прокручивать и сворачивать панель инструментов.

Если вы попытаетесь прикоснуться к панели приложений и прокрутите вверх, она обрушится.

Знаете ли вы способ остановить это и заставить его рушиться ТОЛЬКО, когда пользователь касается ресайклера?

+0

может быть recyclerview высота 'match_parent' может работать. –

ответ

0

Ответ был прост, как я увидел here

if (appBarLayout.getLayoutParams() != null) { 
CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams) appBarLayout.getLayoutParams(); 
AppBarLayout.Behavior appBarLayoutBehaviour = new AppBarLayout.Behavior(); 
appBarLayoutBehaviour.setDragCallback(new AppBarLayout.Behavior.DragCallback() { 
    @Override 
    public boolean canDrag(@NonNull AppBarLayout appBarLayout) { 
     return false; 
    } 
}); 
layoutParams.setBehavior(appBarLayoutBehaviour); 

}