2012-06-01 5 views
0

У меня есть пользовательский вид, и мне удалось включить полосы прокрутки, используя этот пост: Android: Enable Scrollbars on Canvas-Based View. Проблема в том, что я не могу их прокручивать, хотя я переопределял функции вычисления. Вот код, который создает вид:Custom scrollbars

final PaintBoardView paintBoardView=new PaintBoardView(this); 
LinearLayout.LayoutParams layoutParams=new LinearLayout.LayoutParams(
     0,ViewGroup.LayoutParams.FILL_PARENT,(float)0.8); 
paintBoardView.setLayoutParams(layoutParams); 
ViewGroup boardToolsContainer=(ViewGroup)findViewById(R.id.board_tools_container); 
boardToolsContainer.addView(paintBoardView); 

А вот конструктор вида по:

super(context); 
setBackgroundResource(android.R.color.white); 
setHorizontalScrollBarEnabled(true); 
setVerticalScrollBarEnabled(true); 
TypedArray styledAttributes=context.obtainStyledAttributes(
    R.styleable.View); 
initializeScrollbars(styledAttributes); 
styledAttributes.recycle(); 

И:

@Override public int computeHorizontalScrollRange() { return 2000; } 
@Override public int computeVerticalScrollRange() { return 2000; } 

Как я уже говорил, я вижу полосы прокрутки, но прокрутка не работает. Спасибо за любую помощь.

ответ

0

В конце концов, я просто использую методы scrollBy и scrollTo вида, чтобы прокручивать себя в функции onTouchEvent.