我想通了。我需要從主音樂符號視圖的圖形中分離滾動條的圖形。這樣我可以放大主符號視圖而不影響滾動條。
所以我用線性佈局來創建2次 -
layout.setLayoutParams(new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT,
100));
layout.setOrientation(LinearLayout.HORIZONTAL);
Globals.mMainView = new MainView(context);
Globals.mMainView.setLayoutParams(new LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.WRAP_CONTENT, 60));
layout.addView(Globals.mMainView);
Globals.mScrollbarView = new ScrollbarView(context);
Globals.mScrollbarView.setLayoutParams(new LinearLayout.LayoutParams(20, LinearLayout.LayoutParams.WRAP_CONTENT, 0));
layout.addView(Globals.mScrollbarView);
然後我刪除的MainView滾動條的顯示,並把它們在ScrollbarView。
然後我在ScrollbarView中使用onScroll事件來控制MainView中的滾動。我必須記得從ScrollbarView.computeVerticalScrollRange返回MainView的實際顯示長度,以便滾動條大小顯示正常。
因爲我參考了保存爲全局的兩個視圖,所以它們很容易在必要時相互交談。
你看過[ScrollView](http://developer.android.com/reference/android/widget/ScrollView.html)嗎? – Veger
我正在看。我只是將我的視圖更改爲滾動視圖,並且顯示看起來相同並且捏縮放工作。但是現在,當我在GestureDetector中獲得onScroll回調函數時,distanceY總是1.在View基類中,我得到了相應的拖拽量。無論如何,感謝您的提示,這可能會有所幫助。 – steveh
實際上,當我把滾動條放回到右側,然後我放大,滾動條移出屏幕,所以我不確定ScrollView的優點是什麼,但它似乎沒有幫助我的問題。 – steveh