Xamarin 在ARKit中截图

Xamarin 在ARKit中截图,xamarin,xamarin.ios,scenekit,augmented-reality,arkit,Xamarin,Xamarin.ios,Scenekit,Augmented Reality,Arkit,我目前正在使用Xamarin制作我的第一个ARKit应用程序 我正在尝试拍摄AR视图(相机视图+3D场景),供用户保存和共享 正如在其他帖子中所建议的,我正在我的ARSCNView(名为SceneView)上使用来获取UIImage,并使用以前创建的UIImageView来显示它,并且一直获得以下MemberAccessException: 添加的stacktrace没有帮助: 快照似乎在内部尝试创建SCNScenerEnder的实例,因此出现了错误 我有点绝望,你会认为在AR视图中用3D场

我目前正在使用Xamarin制作我的第一个ARKit应用程序

我正在尝试拍摄AR视图(相机视图+3D场景),供用户保存和共享

正如在其他帖子中所建议的,我正在我的ARSCNView(名为SceneView)上使用来获取UIImage,并使用以前创建的UIImageView来显示它,并且一直获得以下MemberAccessException:

添加的stacktrace没有帮助:

快照似乎在内部尝试创建SCNScenerEnder的实例,因此出现了错误


我有点绝望,你会认为在AR视图中用3D场景拍照是简单而自然的


任何帮助都将不胜感激。

您似乎试图调用类本身的快照,而不是该类的实例。将调用更改为调用视图对象上的快照。

因此,我仍然认为这是一个Xamarin错误,并找到了解决方法

我正在引用要在ScreenShotHidden列表中从屏幕截图中隐藏的UIView,并且我正在使用我的SceneView上的经典UIView.Capture方法:

ScreenshotHiddable.HiddenAll(true);
UIImage screenshot = SceneView.Capture();
ScreenshotHiddable.HiddenAll(false);

我承认这有点难看,但它起作用了。

在这种情况下,SceneView是我的ARSCNView。ArscnView继承自SCNView。所以我在视图对象的一个实例上调用它。