studio sirve samsung que programar para instalar descargar celular aplicacion java android

samsung - para que sirve java en android



NestedScrollView no se lanza con Recyclerview adentro (5)

Añade esto en tu RecyclerView xml:

android:nestedScrollingEnabled="false"

Tengo un diseño como ese:

<NestedScrollView> <RecyclerView> // vertical recycler view <RecyclerView/> // horizontal recycler view <RecyclerView/> <RecyclerView/> ... <RecyclerView> </NestedScrollView>

El resultado se parece a Google Play Store:

Y deshabilité NestedScrolling en la vista horizontal Recycler :

horizontalRecyclerView.setHasFixedSize(true); horizontalRecyclerView.setNestedScrollingEnabled(false);

Mi problema:

La vista de vertical recyclerview no se desplaza, siempre que ocurre ACTION_UP , la vista de vertical recyclerview también detiene el desplazamiento.

¿Cómo puedo anidar vertical recyclerview dentro de nestedscrollview y el horizontal recyclerview dentro del vertical recyclerview como Playstore y mantener el desplazamiento suave.

Resuelto

Usando la vista de desplazamiento anidada personalizada de @vrund purohit (código a continuación), y nesteds deshabilitado, tanto la vista de reciclaje vertical como la horizontal:

verticalRecyclerView.setNestedScrollingEnabled(false); ... add each horizontal recyclerviews: horizontalRecyclerView.setNestedScrollingEnabled(false);


He resuelto el problema utilizando el siguiente código:

myRecyclerView.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.VERTICAL, false){ @Override public boolean canScrollHorizontally() { return true; } @Override public boolean canScrollVertically() { return true; } });


Tuve este mismo problema y resolví este problema personalizando NeatedScrollView .

Aquí está la clase para eso.

MyNestedScrollView

public class MyNestedScrollView extends NestedScrollView { @SuppressWarnings("unused") private int slop; @SuppressWarnings("unused") private float mInitialMotionX; @SuppressWarnings("unused") private float mInitialMotionY; public MyNestedScrollView(Context context) { super(context); init(context); } private void init(Context context) { ViewConfiguration config = ViewConfiguration.get(context); slop = config.getScaledEdgeSlop(); } public MyNestedScrollView(Context context, AttributeSet attrs) { super(context, attrs); init(context); } public MyNestedScrollView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(context); } private float xDistance, yDistance, lastX, lastY; @SuppressWarnings("unused") @Override public boolean onInterceptTouchEvent(MotionEvent ev) { final float x = ev.getX(); final float y = ev.getY(); switch (ev.getAction()) { case MotionEvent.ACTION_DOWN: xDistance = yDistance = 0f; lastX = ev.getX(); lastY = ev.getY(); // This is very important line that fixes computeScroll(); break; case MotionEvent.ACTION_MOVE: final float curX = ev.getX(); final float curY = ev.getY(); xDistance += Math.abs(curX - lastX); yDistance += Math.abs(curY - lastY); lastX = curX; lastY = curY; if (xDistance > yDistance) { return false; } } return super.onInterceptTouchEvent(ev); } public interface OnScrollChangedListener { void onScrollChanged(NestedScrollView who, int l, int t, int oldl, int oldt); } private OnScrollChangedListener mOnScrollChangedListener; public void setOnScrollChangedListener(OnScrollChangedListener listener) { mOnScrollChangedListener = listener; } @Override protected void onScrollChanged(int l, int t, int oldl, int oldt) { super.onScrollChanged(l, t, oldl, oldt); if (mOnScrollChangedListener != null) { mOnScrollChangedListener.onScrollChanged(this, l, t, oldl, oldt); } } }

Feliz codificacion


Utilice el siguiente código para un desplazamiento suave:

ViewCompat.setNestedScrollingEnabled(recyclerView, false);


[RESUELTO] Tengo el mismo problema con el reciclaje horizontal. Cambiar el repositorio de Gradle para reciclaje.

compile ''com.android.support:recyclerview-v7:23.2.1'' Escriba esto: linearLayoutManager.setAutoMeasureEnabled (true);

Errores corregidos relacionados con varios métodos de medición de especificaciones en la actualización

Consulte http://developer.android.com/intl/es/tools/support-library/features.html#v7-recyclerview

He encontrado un problema con la biblioteca 23.2.1: cuando el elemento es match_parent recycle, complete el elemento completo para ver, siempre vaya con min height o "wrap_content".

Gracias