¿Cómo deshabilitar el scolling en un HorizontalScrollView?
Tengo un HorizontalScrollView y un botón en mi proyecto. Quiero esto >>> cuando el botón hecho clic en el HorizontalScrollView no se desplaza. Realmente el usuario puede arreglar la vista.
Yo uso este código, pero no funciona.
- Horizontal ScrollView en el elemento de vista de lista Android
- Establecer selección en HorizontalScrollView
- ¿Cómo activar onClickListener para HorizontalScrollView?
- "IllegalStateException: scrollview puede alojar sólo un hijo directo" en un LinearLayout añadiendo
- Menú horizontal con HorizontalScrollView-android
Button btn_s = (Button) findViewById(R.id.button999); final HorizontalScrollView h_scroll = (HorizontalScrollView) findViewById(R.id.horizontalScrollView1); btn_s.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { h_scroll.setVisibility(0); } })
- Android: Cómo implementar una galería de imágenes con RecyclerView
- Resalte la imagen seleccionada en HorizantalListView en android y permanecerá seleccionada hasta que no se haga clic en otra imagen
- Efecto marquesina para diseño lineal
- Uso del diseño ScrollViews en HorizontalScrollView
- ListView con ScrollView horizontal
- Lista 2D con RecyclerView en HorizontalScrollView
- Android - deshabilitar el desplazamiento excesivo en HorizontalScrollView
- HorizontalScrollView en TabHost añadiendo espacio adicional al final
Puedes usar,
h_scroll.setVisibility(View.INVISIBLE); h_scroll.setVisibility(View.GONE);
Además, puede definir su propio comportamiento para la vista de desplazamiento utilizando la función,
public boolean onInterceptTouchEvent(MotionEvent ev) { }
Echa un vistazo aquí, Intercept Horizontal ScrollView
He resuelto este problema con este código:
Button btn_s = (Button) findViewById(R.id.button999); final HorizontalScrollView h_scroll = (HorizontalScrollView)findViewById(R.id.horizontalScrollView1); btn_s.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if(!return_h_scroll){ return_h_scroll = true; } else return_h_scroll = false; } }); h_scroll.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { return return_h_scroll; } });