7

I have HorizontalScrollView with long view as a child, so HorizontalScrollView is scrollable and can scroll its child horizontally. Is there any possibility to block that? I don't want user to be able to scroll the view.

1
  • 1
    The scroll view is for scrolling! If you don't want user scrolling, choose another way other than using scrollView. You can use animation instead. Commented May 5, 2012 at 14:09

2 Answers 2

20

My suggestion is to use an OnTouchListener, for example:

In onCreate Method


HorziontalScrollView scrollView= (HorizontalScrollView)findViewById(R.id.scrollView); scrollView.setOnTouchListener(new OnTouch()); 

And has a class:


private class OnTouch implements OnTouchListener { @Override public boolean onTouch(View v, MotionEvent event) { return true; } } 
Sign up to request clarification or add additional context in comments.

1 Comment

That saved my day! Actually, i spent a hour looking how to disable small scrolling in TabLayout. But i completely forgot that it's kind of scrollview! That works in my case as well.
2

Ok, I found the way how to implement that.

Just need to create my own HorizontalScrollView and override onTouchEvent method

public class MyHSV extends HorizontalScrollView { public MyHSV(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(context); } public MyHSV(Context context, AttributeSet attrs) { super(context, attrs); init(context); } public MyHSV(Context context) { super(context); init(context); } void init(Context context) { // remove the fading as the HSV looks better without it setHorizontalFadingEdgeEnabled(false); setVerticalFadingEdgeEnabled(false); } @Override public boolean onTouchEvent(MotionEvent ev) { // Do not allow touch events. return false; } @Override public boolean onInterceptTouchEvent(MotionEvent ev) { // Do not allow touch events. return false; } } 

And then in the xml file

<pathToClass.MyHSV xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="fill_parent" android:scrollbars="none" android:id="@+id/myHSV> </pathToClass.MyHSV> 

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.