这两天在给黑马程序员.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/下,哇咔咔,搞定了。
凡事搞定原理就不难,遇到问题要学会看错误提示消息和分析,不要像无头苍蝇一样乱撞
相关推荐
- **Visual Studio**:Microsoft的Visual Studio是主要的开发工具,提供集成的开发环境(IDE),包括代码编辑器、项目管理、调试器等功能。 - **Xamarin Studio**:对于非Windows用户,Xamarin Studio(现在称为...
在本文中,我们将探讨如何解决在Visual Studio 2012和2010中使用Mono for Android开发时遇到的`.axml`文件缺少智能提示(IntelliSense)的问题。这个问题主要涉及到`.axml`文件在设计Android界面时无法提供自动完成...
Visual Studio 2010提供了XML编辑器,帮助开发者创建和管理Android的布局文件。同时,C#代码可以动态控制UI元素,实现丰富的交互逻辑。 6. **事件驱动编程**: Android应用基于事件驱动模型,C#中的事件处理机制与...
3. "QuickEdit":这可能是一个文本编辑器应用的实现,演示了C#如何处理Android的输入事件,以及如何在Android平台上实现快速的文本编辑功能。 综合以上信息,我们可以预想这份教程可能会涵盖以下知识点: - **...
3. **Android项目结构**: 示例代码会展示一个标准的Android项目是如何在Visual Studio中组织的,包括src(源代码)、res(资源)、AndroidManifest.xml(应用配置)等目录和文件。 4. **布局设计**: 在Android应用...
我们可以利用Android Studio的布局编辑器或Visual Studio的Xamarin Designer来设计这些元素。 2. **自定义控件**:为了达到QQ登录界面的视觉效果,可能需要自定义某些控件,例如登录按钮的形状、颜色和阴影。我们...
Xamarin将Android API转换为.NET接口和类,使得开发者可以直接调用Android API,如活动(Activities)、服务(Services)、广播接收器(Broadcast Receivers)和内容提供者(Content Providers)。这使得.NET开发者...
1. **权限问题**:如果Java代码需要访问Android权限,需要在Unity的`AndroidManifest.xml`中声明这些权限。 2. **类找不到**:确保Java类的命名空间和C#接口匹配,包括大小写。 3. **版本兼容性**:Unity和Android ...
5. **布局和用户界面**:XML用于定义Android应用的用户界面,理解如何创建布局、控件和事件监听器是UI设计的关键。此外,学习使用 ConstraintLayout 和 Material Design 指南可以提高界面的美观度和可用性。 6. **...
开发者可以使用Android Studio的布局编辑器或手写XML来创建视图层次结构。 8. **事件驱动编程**:在NsdChat应用中,事件驱动编程用于处理设备发现、连接建立和消息传递等操作。C#中的事件和委托机制将在此发挥关键...
两者都提供了强大的工具集,包括调试器、代码编辑器和项目管理功能。 二、iOS应用架构 1. MVC模式:在Xamarin iOS开发中,模型-视图-控制器(MVC)模式是常见的设计模式。理解并熟练应用MVC有助于组织代码,提高可...
- 在Unity编辑器中预览语音识别功能,然后在实际设备上进行测试,确保一切正常运行。 9. **优化与性能**: - 考虑到语音识别可能会消耗较多的CPU和内存资源,注意在不使用时关闭识别,避免不必要的资源浪费。 ...
- **XML 文档和 IntelliSense 支持:** 丰富的文档和编辑器支持,方便开发者查阅和编写代码。 - **选择使用 Image 类或直接调用 OpenCV 函数:** 开发者可以选择使用 EmguCV 的 `Image` 类来处理图像,也可以直接...
Stimulsoft Reports是一款强大的报表设计工具,专为开发者提供数据可视化和报告生成解决方案。2018.3.3版本是该软件的一个特定更新,它可能包含了性能优化、新功能添加以及已知问题的修复。这个压缩包"Stimulsoft_...