我正在寫一個應用程序,它將創建一個圖並在SurfaceView上繪製它。最終,圖形需要能夠更新,但現在我希望SurfaceView能夠水平滾動,以便用戶可以看到所有數據。這可能嗎?SurfaceView水平滾動
回答
中的gathertransparentRegion(Region region)您需要將您的自定義視圖作爲獨立類放在水平滾動視圖中。當您創建自定義圖表的instace查看您根據圖形的寬度就告訴尺寸本身通過重寫onMeasure方法:
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
this.setMeasuredDimension(graphWidth, graphHeight);
}
graphWidth = barLenghtInPixels * barCount + extraSpaceInPixels;
您可以使用自定義標籤就像把你的customView在XML佈局<com.myApplication.GraphView...>
或使用myScrollView.addView(myCustomView)
並將其添加到HorizontalScrollView
中,然後再撥打setContentView(myLayout)
。
這正是我所期待的。謝謝! – user650309
當我嘗試將自定義視圖置於水平滾動視圖中並運行應用程序時,adb告訴我這是由於空指針異常導致的。你有什麼想法,爲什麼? GraphView graphView; HorizontalScrollView myScrollView = new HorizontalScrollView(this); public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); graphView = new GraphView(this); myScrollView.addView(graphView); setContentView(myScrollView); } } – user650309
您可以將一些代碼塊設置爲註釋以便找到哪個部件導致它 - 簡化代碼以查找錯誤。您需要將GraphView的代碼和您的活動粘貼到您的問題中,以便了解更多信息。 – Lumis
在表面視圖內放置一個HorizontalScrollView元素。查看HorizontalScrollView documentation
來顯示我的surfaceView我已經擴展它在代碼而不是使用XML。我怎麼能把一個HorizontalScrollView放在裏面? – user650309
不知道這可能會有助於http://www.mail-archive.com/[email protected]/msg45804.html – zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
- 1. 水平滾動
- 2. 水平滾動?
- 3. 水平滾動
- 4. 水平滾動
- 5. 水平滾動
- 6. 水平滾動+滾動條
- 7. 嵌套surfaceview> Linearlayout>水平滾動視圖
- 8. 水平滾動dataTables.js
- 9. UICollectionView水平滾動
- 10. UITextView - 水平滾動?
- 11. jscrollpane - 水平滾動
- 12. 水平滾動Div
- 13. CFGRID水平滾動
- 14. jQuery水平滾動?
- 15. Safari水平滾動
- 16. 水平滾動TextView
- 17. UICollectionView水平滾動
- 18. 水平滾動? javascript
- 19. 水平滾動css?
- 20. 水平滾動表
- 21. html水平滾動
- 22. 水平滾動ViewPager
- 23. 水平滾動jquery
- 24. Android:TextView水平滾動
- 25. iPhone水平滾動
- 26. Highcharts水平滾動
- 27. Android水平滾動
- 28. 水平滾動UITableView
- 29. Rmarkdown水平滾動
- 30. CSS水平滾動
你不能把一個水平scrollView – Rasel