gpt4 book ai didi

Android:是否可以让两个表面 View 相互叠加?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:56:36 25 4
gpt4 key购买 nike

我的想法是有两个表面 View 。一个 surfaceView 将保存图像(比如 ImageSurgaceView),第二个表面位于第一个表面之上,第一个表面保存注释(比如 AnnotationSurfaceView),如圆形、矩形等。现在我必须映射这些表面 View ,以便高度、宽度是相同的,而且,两个表面 View 都应该在拖动时移动,即共享触摸事件。准确地说,当我向上移动图像时,注释也应该向上移动。

现在,我不确定这在 android 中是否可行。任何人都可以告诉或分享一些这方面的信息。我对此没有任何实现想法,因此我没有任何具体代码。而且,我找不到任何类似的东西。

感谢您的帮助。

最佳答案

是的,这是可能的。您可以将这两个 SurfaceView 添加为 FrameLayout 的子项。您还需要调用 setZOrderMediaOverlay在您的一个或两个 SufaceView 上,以指定它们的分层方式。

此外,这可能是您描述的图形密集型算法。考虑添加 AndroidManifest.xml application 属性 android:hardwareAccelerated="true"

最后,只需设置自定义 OnTouchListener 来处理拖动事件。使用 MotionEvent.getRawX()MotionEvent.getRawY() 获取触摸点,并使用它来操作 Canvas 。

关于Android:是否可以让两个表面 View 相互叠加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18358852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com