You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Visual Studio开发Xamarin.Mac项目未自动生成ViewController.h/.m文件求助

Xamarin.Mac项目缺失.h/.m存根文件问题解决方案

核心结论

你不需要手动创建ViewController.h文件,该版本Visual Studio for Mac依然会自动生成ObjC存根文件,只是生成逻辑和存储路径和你预想的不同。

问题原因

  • 这类.h/.m存根是VS for Mac生成的临时同步文件,不会持久保存在你的项目源码目录中,也不会展示在VS的解决方案文件列表里,默认存储在VS的临时缓存目录中。
  • 只有从VS内部触发Xcode打开Interface Builder文件的操作,才会触发生成存根文件的逻辑,直接双击stroyboard文件打开Xcode不会触发同步,自然找不到对应的.h文件。

正确操作步骤

  • 先完全关闭当前打开的所有Xcode窗口,退出Xcode进程。
  • 回到Visual Studio for Mac的解决方案面板,找到你项目中的.storyboard文件,右键选择「用Xcode Interface Builder打开」,等待1-2秒让VS完成后台同步。
  • 打开Xcode后,点击右上角打开Assistant编辑器,编辑器上方的模式选择Automatic,即可自动匹配加载对应的ViewController.h存根文件,正常拖拽关联Outlets/Actions即可。

异常排查方案

如果按照上述步骤操作依然找不到.h文件,按以下顺序排查:

  • 检查你的ViewController.cs类定义是否添加了[Register("ViewController")]特性,缺少该特性时VS不会识别到需要为该类生成ObjC存根。
  • 清理VS解决方案缓存:点击顶部菜单栏「生成」->「清理全部」,再重新尝试通过VS打开Xcode。
  • 检查Xcode的Assistant编辑器文件选择器的层级,确认选择的是ViewController.h而非其他无关文件。

内容的提问来源于stack exchange,提问作者Tokio Inamura

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 21:24:03