我正在绘制一些图形,我想为其添加滚动。但是用表面视图如何以编程方式添加滚动?

最佳答案

SurfaceView是一个非常特殊的组件,将它与其他组件混合起来并不容易。主要原因是它的工作原理:当您使用SurfaceView时,将创建一个新窗口(默认情况下位于活动之后),并且SurfaceView中的所有渲染都将转到该窗口。 SurfaceView还将在活动中“绘制一个孔”,因此它后面的窗口将可见。

SurfaceView需要将窗口位置与其位置同步,这并不是很完美。例如,如果将SurfaceView放在可以滚动的对象内,则窗口将不会滚动(至少不是我上次尝试的时间,大约是Froyo时)。

请提供有关您要执行的操作的更多信息。如果您只想创建一个自定义组件,则仅子类化View并覆盖onDraw(Canvas)会更容易。

关于android - Android:如何为Surfaceview添加滚动?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8530851/

10-12 04:31