VS2015 Xamarin Android下如何手动触发资源重新索引?
解决VS2015 Xamarin Android中Resource.designer.cs不自动更新的问题
遇到这种资源文件不自动同步的情况确实头疼,尤其是项目变大后,VS的自动触发机制偶尔会"偷懒"。分享几个比改axml文件名更高效的方法:
1. 直接触发资源重新生成命令
右键你的Android项目,在弹出菜单里找**"Regenerate Resources"**选项——这是Xamarin专门为资源同步提供的快捷命令,比改文件名精准多了,瞬间就能触发Resource.designer.cs的更新。
如果右键菜单里找不到,也可以走顶部菜单:Build → Clean Solution,接着执行Build → Build Solution。虽然重建整个项目比单独生成资源慢一点,但胜在稳妥,能彻底解决资源同步的问题。
2. 检查项目设置,确保自动生成开关开启
有时候是项目配置的问题导致自动生成失效:
- 右键项目 → Properties
- 切换到Android Options标签页,点击右下角的Advanced按钮
- 确认**"Auto-generate resource files"是勾选状态。另外可以暂时关闭"Fast deployment"**选项——这个功能虽然能加快部署速度,但偶尔会干扰资源文件的自动更新。
3. 用MSBuild命令精准生成资源
如果不想等整个项目重建,打开VS的Package Manager Console,切换到你的Android项目目录,执行这条命令:
msbuild /t:GenerateResources
这条命令会直接触发资源生成的MSBuild目标,只处理资源相关的部分,速度比重建快很多,适合频繁修改资源的场景。
4. 清理VS和Xamarin的缓存
如果上面的方法都不管用,大概率是缓存损坏导致的:
- 完全关闭VS
- 删除以下两个目录的内容:
%LOCALAPPDATA%\Microsoft\VisualStudio\14.0\ComponentModelCache(VS2015的组件缓存)%USERPROFILE%\AppData\Local\Xamarin(Xamarin的临时资源缓存)
- 重新打开VS并构建项目,缓存清理后通常能恢复正常的自动同步。
项目过大确实可能让VS的自动资源生成机制响应变慢,因为解析大量资源文件需要更多时间,VS可能没及时触发更新。上面的方法从手动触发、配置检查到缓存清理都覆盖到了,应该能解决你的问题。
内容的提问来源于stack exchange,提问作者Cruces
相关产品推荐
相关产品推荐

