我的想法是有两个表面视图。一个 SurfaceView 将保存图像(例如 ImageSurgaceView),第二个表面位于第一个表面之上,该表面保存注释(例如 AnnotationSurfaceView),如圆形、矩形等。现在我必须映射这些表面视图,以便高度、宽度是相同的,而且,两个表面视图都应该在拖动时移动,即共享触摸事件。准确地说,当我向上移动图像时,注释也应该向上移动。
现在,我不确定这在 Android 中是否可行。任何人都可以告诉或分享一些这方面的信息吗?我对此没有任何实现想法,因此我没有任何具体代码。而且,我找不到任何类似的东西。
谢谢你的帮助。
是的,这是可能的。您可以同时添加SurfaceView
s 作为 a 的子代FrameLayout
。您还想致电setZOrderMediaOverlay http://developer.android.com/reference/android/view/SurfaceView.html#setZOrderMediaOverlay%28boolean%29在你的一个或两个上SufaceView
s 以便指定它们如何分层。
此外,这可能是您描述的图形密集型算法。考虑添加AndroidManifest.xml
应用属性android:hardwareAccelerated="true"
.
最后,只需设置一个自定义OnTouchListener
处理拖动事件。使用MotionEvent.getRawX()
and MotionEvent.getRawY()
获取触摸点,并用它来操作画布。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)