Xamarin设计器无法加载:新建空白项目打开Main.axml报错
解决Xamarin Android设计器打开Main.axml时的ArgumentNullException错误
我帮你整理了几个针对这个报错的有效解决办法,都是社区里验证过的方案,你可以挨个试试:
方法1:清理项目文件再重新生成
- 先关掉Visual Studio,找到你的项目目录,删掉里面的
bin和obj文件夹(这两个是编译生成的临时文件) - 重新打开Visual Studio,右键点击项目,先选清理,再选生成
- 之后再尝试打开Main.axml文件
方法2:清空Xamarin设计器缓存
- 关闭Visual Studio,找到缓存目录:
- Windows系统:直接在文件管理器地址栏输入
%LOCALAPPDATA%\Xamarin\Cache就能找到 - macOS系统:打开访达,按
Cmd+Shift+G,输入~/Library/Caches/Xamarin
- Windows系统:直接在文件管理器地址栏输入
- 删掉这个目录里的所有内容,再重启Visual Studio试试
方法3:更新Visual Studio和Xamarin组件
- 打开Visual Studio,点击顶部菜单的工具 -> 获取工具和功能,检查有没有可用的更新,特别是Xamarin相关的组件
- 把所有能更的都更了,重启Visual Studio后再加载项目
方法4:切换设计器的渲染设置
- 打开Main.axml时,设计器顶部工具栏有个渲染器的选项,你可以试试切换到不同的Android版本(比如从高版本降到Android 11),或者选通用模式
- 要是还是不行,看看有没有禁用硬件加速渲染的选项,勾上它试试(Windows环境下这个办法经常管用)
方法5:修复Visual Studio安装
- 打开Visual Studio安装程序,选择你的Visual Studio实例,点击修改,然后选修复
- 等修复完成重启Visual Studio,再重新加载项目
你遇到的错误信息:
System.ArgumentNullException: Value cannot be null.
Parameter name: o
at System.Runtime.InteropServices.Marshal.GetIUnknownForObjectNative(Object o, Boolean onlyInContext)
at Xamarin.AndroidDesigner.Windows.WindowsAndroidSurfaceRenderer.UpdateD3DImageFromSharedSurface() in E:\A_work\102\s\Xamarin.Designer.Android\Xamarin.AndroidDes...
内容的提问来源于stack exchange,提问作者user5900485
相关产品推荐
相关产品推荐

