5

Ho un oggetto NestedScrollView (parte dell'attività di scorrimento di default) che contiene un CoordinatorLayout e RecyclerView per visualizzare le carte con alcune informazioni. Il layout è progettato per consentire alle carte di andare fuori campo se ce ne sono troppe e far scorrere l'utente verso il basso, tuttavia per qualche motivo la pergamena non ha lo slancio verso di essa come dovrebbe. Mi sono guardato intorno e una domanda precedente detto come disattivare il rotolo intertial in uno ScrollView (Android ScrollView disable Inertial scrolling), così ho cercato di fare il contrario:Abilita scorrimento intertiale in NestedScrollView (Studio Android)

NestedScrollView mgScrollView = (NestedScrollView) findViewById(R.id.my_games_scroll_view); 
mgScrollView.setSmoothScrollingEnabled(true); 

ma questo non realizzarlo. Ho testato mgScrollView.setVerticalScrollBarEnabled (true); per vedere se stavo anche applicando il codice alla vista giusta, e così accade anche le barre di scorrimento non si sono mostrate. Quindi ora sono confuso se sto applicando questi metodi anche alla vista giusta, ma dal momento che non ho altre ScrollViews non sono sicuro di dove dovrebbe essere se non sono corretto. So di poter aggiungere barre di scorrimento nello stesso xml ma non ho trovato il codice xml per lo scorrimento inerziale. C'è un modo per aggiungere inerzia attraverso Java o xml?

Ecco il codice per content_my_games.xml, che è dove i layout per le schede vanno (da non confondere con activity_my_games.xml, che ospita il codice per la CollapsingToolbarLayout e FAB)

Grazie

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/my_games_scroll_view" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
app:layout_behavior="@string/appbar_scrolling_view_behavior" 
tools:context="com.example.abhinav.sportswowandroid.MyGamesActivity" 
tools:showIn="@layout/activity_my_games"> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingLeft="16dp" 
    android:paddingRight="16dp" 
    android:paddingTop="16dp" 
    android:paddingBottom="16dp" 
    tools:context=".MyGamesActivity"> 

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

    <android.support.v7.widget.RecyclerView 
      android:id="@+id/recycler_view" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      app:layout_behavior="android.support.design.widget.AppBarLayout$ScrollingViewBehavior" 
      /> 

    <android.support.design.widget.AppBarLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      /> 
    </RelativeLayout> 
</android.support.v4.widget.NestedScrollView> 

risposta

4

Vecchia domanda, ma mi sono imbattuto in questo io stesso. Questo lo ha risolto per me:

RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycler_view); 
recyclerView.setNestedScrollingEnabled(false); 
Problemi correlati