`
heatpress123
  • 浏览: 3397 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

解决Mono for android的xml编辑器无法代码完成的问题

阅读更多

这两天在给黑马程序员.Net训练营讲使用.Net开发Android的Mono for android技术, 发现使用的开发工具在停止调试的时候特别卡,能卡上几十秒钟,而且经常弹出报错的对话框,严重影响心情,因此昨天就下载安装了最新版本的开发工具 Xamarin Mono For Android 4.6。安装后也不卡了,也不谈对话框了,太爽了。但是很快发现一个很大的问题“axml编辑器中的无法自动进行标签的自动提示”,这就太降低开发效率。

    遇到问题要学会分析问题,visual studio中对于xml文件提供了自动提示、自动代码完成的功能,其原理是:visual studio会根据当前编辑xml文件的schema声明到Visual studio安装路径下的Xml\Schemas中找和当前编辑的xml文件的schema一致的xsd文件,因为xsd文件是对xml文件格式的标准约 束,这样VS就如何完成自动提示了。像Web.config这类文件的自动提示功能就是这样实现的。

   既然明白了这个原理,就来分析一下,打开Xml\Schemas文件夹发现了一个monodroidcatalog.xml文件和monoandroid貌似又关系,打开这个文件发现内容如下:

复制代码
<SchemaCatalog xmlns="http://schemas.microsoft.com/xsd/catalog">
  <Schema href="%ProgramFiles%/MSBuild/Novell/android-layout-xml.xsd" />
  <Schema href="%ProgramFiles%/MSBuild/Novell/schemas.android.com.apk.res.android.xsd" targetNamespace="http://schemas.android.com/apk/res/android" />

  <Association extension="axml" schema="%ProgramFiles%/MSBuild/Novell/android-layout-xml.xsd" />
</SchemaCatalog>
复制代码


    猜测这个文件是告诉VS“xsd文件在%ProgramFiles%/MSBuild/Novell/下的android-layout-xml.xsd 等文件中”,相当于是一个“指路者”,但是我打开%ProgramFiles%/MSBuild/Novell/却发现根本没有这些文件,看来找到问题 了。
    在磁盘上搜索,在C:\Program Files\Xamarin Studio\AddIns\MonoDevelop.MonoDroid\schemas文件夹下发现了:android-layout- xml.xsd、schemas.android.com.apk.res.android.xsd这两个文件,把他们拷贝 到%ProgramFiles%/MSBuild/Novell/下,哇咔咔,搞定了。

    凡事搞定原理就不难,遇到问题要学会看错误提示消息和分析,不要像无头苍蝇一样乱撞

分享到:
评论

相关推荐

    mono for Android API

    - **Visual Studio**:Microsoft的Visual Studio是主要的开发工具,提供集成的开发环境(IDE),包括代码编辑器、项目管理、调试器等功能。 - **Xamarin Studio**:对于非Windows用户,Xamarin Studio(现在称为...

    解决Visual Stuido 2012、2010中Mono For Android .axml文件没有智能提示(IntelliSense)问题

    在本文中,我们将探讨如何解决在Visual Studio 2012和2010中使用Mono for Android开发时遇到的`.axml`文件缺少智能提示(IntelliSense)的问题。这个问题主要涉及到`.axml`文件在设计Android界面时无法提供自动完成...

    C#开发Android Facebook客户端完整源码(使用Mono技术基于vs2010开发)

    Visual Studio 2010提供了XML编辑器,帮助开发者创建和管理Android的布局文件。同时,C#代码可以动态控制UI元素,实现丰富的交互逻辑。 6. **事件驱动编程**: Android应用基于事件驱动模型,C#中的事件处理机制与...

    C#开发android应用实战 pad+源码.rar

    3. "QuickEdit":这可能是一个文本编辑器应用的实现,演示了C#如何处理Android的输入事件,以及如何在Android平台上实现快速的文本编辑功能。 综合以上信息,我们可以预想这份教程可能会涵盖以下知识点: - **...

    vs-android_samples.zip

    3. **Android项目结构**: 示例代码会展示一个标准的Android项目是如何在Visual Studio中组织的,包括src(源代码)、res(资源)、AndroidManifest.xml(应用配置)等目录和文件。 4. **布局设计**: 在Android应用...

    xamarin Android 仿QQ 登陆界面

    我们可以利用Android Studio的布局编辑器或Visual Studio的Xamarin Designer来设计这些元素。 2. **自定义控件**:为了达到QQ登录界面的视觉效果,可能需要自定义某些控件,例如登录按钮的形状、颜色和阴影。我们...

    .net安卓SDK

    Xamarin将Android API转换为.NET接口和类,使得开发者可以直接调用Android API,如活动(Activities)、服务(Services)、广播接收器(Broadcast Receivers)和内容提供者(Content Providers)。这使得.NET开发者...

    unity(5.6)引用安卓工程打成jar包,并由unity打包apk流程及问题

    1. **权限问题**:如果Java代码需要访问Android权限,需要在Unity的`AndroidManifest.xml`中声明这些权限。 2. **类找不到**:确保Java类的命名空间和C#接口匹配,包括大小写。 3. **版本兼容性**:Unity和Android ...

    Android开发帮助文档

    5. **布局和用户界面**:XML用于定义Android应用的用户界面,理解如何创建布局、控件和事件监听器是UI设计的关键。此外,学习使用 ConstraintLayout 和 Material Design 指南可以提高界面的美观度和可用性。 6. **...

    xamarin-android-nsd-chat:Android - 网络服务发现示例应用程序 (NsdChat) 到 C# Xamarin 的端口

    开发者可以使用Android Studio的布局编辑器或手写XML来创建视图层次结构。 8. **事件驱动编程**:在NsdChat应用中,事件驱动编程用于处理设备发现、连接建立和消息传递等操作。C#中的事件和委托机制将在此发挥关键...

    Xamarin iOS开发实战上册(内部资料)

    两者都提供了强大的工具集,包括调试器、代码编辑器和项目管理功能。 二、iOS应用架构 1. MVC模式:在Xamarin iOS开发中,模型-视图-控制器(MVC)模式是常见的设计模式。理解并熟练应用MVC有助于组织代码,提高可...

    Unity语音识别

    - 在Unity编辑器中预览语音识别功能,然后在实际设备上进行测试,确保一切正常运行。 9. **优化与性能**: - 考虑到语音识别可能会消耗较多的CPU和内存资源,注意在不使用时关闭识别,避免不必要的资源浪费。 ...

    Emgu_CV_Tutorial_Skander(EmguCV教程)

    - **XML 文档和 IntelliSense 支持:** 丰富的文档和编辑器支持,方便开发者查阅和编写代码。 - **选择使用 Image 类或直接调用 OpenCV 函数:** 开发者可以选择使用 EmguCV 的 `Image` 类来处理图像,也可以直接...

    Stimulsoft_Reports_2018.3.3_Downloadly.ir.rar

    Stimulsoft Reports是一款强大的报表设计工具,专为开发者提供数据可视化和报告生成解决方案。2018.3.3版本是该软件的一个特定更新,它可能包含了性能优化、新功能添加以及已知问题的修复。这个压缩包"Stimulsoft_...

Global site tag (gtag.js) - Google Analytics