1

我正在编写一个 DAW 风格的应用程序,需要实现此类程序中常见的横向滚动时间线。换句话说,它应该让用户看起来好像他们正在滚动一个非常大的位图,其中几个实际上是针对不同的轨道,无缝的。显然,如果我使用一个非常大的水平滚动视图来执行此操作,我会遇到内存问题,但这需要是用户看到的效果。现在,我为每个轨道都有一个自定义视图,并将波浪绘制到它的画布中。

我考虑过构建三个视图,左视图、活动视图和右视图,并在左侧或右侧及时滚动到准备好下一个全屏时简单地换出新数据。我认为这些方面的东西将成为最终的解决方案,但我不确定实现它的最佳方式是什么。我是否应该在后台运行一项服务来监视和更新屏幕外视图,这是实现此目的的最佳方式吗?我以前没有使用过服务。还是有更直接的方法,将一些代码附加到视图以自动执行?

任何建议,将不胜感激。

4

0 回答 0