2010-12-03 9 views
2

relativelayout을 사용하고 있는데 scrollview 내부에는 선형 레이아웃과 textview의 스크롤을 보장하는 textview가 있지만 특정 조건 이후에 텍스트를 스크롤하고 싶지는 않습니다. 그래서, 이것을 위해 무엇을 할 수 있습니까?어떻게 스크롤 뷰를 비활성화 할 수 있습니까?

답변

10

스크롤바가 보이지 않게하려면이 속성을 사용하십시오.

android:scrollbars="none" 

편집 :

런타임 가시성의 변경 또는 우리가 scrolview.setEnabled(false) 또는 android:enabled=false을 사용할 수 있습니다 위해, 가능 상태의 필요가있는 경우.

+0

특정 조건이 거짓 일 때 비활성화하려면 스크롤해야합니다. 변경 사항은 소스 코드 – Nikki

+3

에서 수행해야합니다. 그런 다음'android : enabled = false' 또는'scrolview.setEnabled (false);를 사용하십시오. – Praveen

+0

친절하게 업데이트하십시오. 당신의 대답에 대한 코멘트는 시청자가 처음 볼 수 있도록합니다. –

1

질문을 올바르게 해석했다면 ScrollView를 확장하고 onInterceptTouchEvent의 구현을 작성하고 싶을 것입니다. 그런 다음 ScrollView가 조건부로 터치 이벤트를 무시하게하여 스크롤 동작을 비활성화 할 수 있습니다. 자세한 내용은 this question을 참조하십시오.

5

가 스크롤 할 수있는 ScrollView를 중지하는 직접적인 방법은 없지만, u는 다른 방법처럼 그것을 수행 할 수 있습니다

scrollview.setOnTouchListener(new OnTouchListener() 
{ 

    @Override 
    public boolean onTouch(View v, MotionEvent event) 
    { 

     return !enable; 
    } 
}); 

당신이 false로 설정할 때 스크롤 시작됩니다 true로 변수를 가능하게 설정할 때 스크롤 중지.

+0

이것은 가장 좋은 답변입니다. 나는 왜 다른 대답이 받아 들여지는지 모르겠다. 이 답변은 실제 답변으로 받아 들여야합니다. 이전에 해봤지만 작동하지 않습니다. ScrollView의 setEnabled는 적용 할 수 없습니다. 이 수신기는 완벽하게 작동합니다. 감사! – Reinherd

+0

다음은 다른 질문의 답변에 대한 더 나은 코드입니다. http://stackoverflow.com/a/5090420/887894 – Anonsage

관련 문제