大家好,我又悄咪咪的来了,在上一篇的Xamarin文章中简单介绍了Xamarin的安装过程,妈蛋没想到很多小朋友很感激我,让他们成功的安装了Xamarin,然后。。。。。。成功的显示了经典的两个单词(别问我那两个经典的单词是什么,我用周易进行了推断,大概是“Hello world!”,233333333,我太屌了!),对了这里再补充一个,貌似微软的模拟器不能用,我用的是真机进行调试。当然相信大家这段时间在园子里或者其他地方找到了许多的Xamarin的学习之道,在上一篇的文章中张善友大神也希望能从Android和IOS的相关知识学起,但是这条入门之路我思量了一下并不适合我,因为相比来说,我更熟悉XAML,我最初买的是刘铁猛的《深入浅出WPF》,这本书只有300来页,用了一个月的时间看完了,然后找了一个相关的工作做WPF的客户端开发,在此期间买了林政的《深入浅出windows phone 8.1 应用开发》给公司开发了半个WinPhone APP(开发完了没上商店,我想很多人也有同样WP开发的经历),后来也做了Silverlight的相关的开发工作,所以呢(这个转折有点大),我可以肯定的告诉大家熟悉WPF或者Silverlight对你学习Xamarin.Forms是有很大的帮助的,当然你熟悉WP的开发也不错,以前我不知道Android的Activity(其他的三个组件没细看),最近我就看了下这个,其实就是传说中的页面周期(妈蛋,我都不知道为什么要起个名字叫Activity,外行人表示懵逼)。好了,废话就哔哔这么多,还是写点什么东西,让大神们来鄙视鄙视。。。。。。顺便提高自己!最后呢,我想说的是:好吧,我承认了解Android的一些基础知识是很有帮助的,大家多少还是了解下,不说精通至少得知道那是什么,干什么的,在项目中看到了不会懵逼。

  从哪里开始呢???嗯,我们先新建一个Forms页面吧,什么?你不知道怎么建,好吧,骚年,你赢了,我们一步一步的来。

  新建一个Xamarin.Forms的项目(不知道?兄弟你只有看上一篇了),然后再可移植的项目上点击右键选择添加-->新建项,然后在Cross-Platform中选择Forms Xaml Page(名字取得很随意,大家要淡定),如下:

  

  

  添加完成后,双击打开

  

  如上图,一个完整的<xxxx></xxxx>或者<xxxx />就是一个标签,借用刘铁猛刘大哥的一句话为大家简单说下什么XAML:XAML是一种声明式语言,当你看到一个标签,就意味着声明了一个对象,对象之间的层级关系要么并列、要么包含,全都体现在标签的关系上。用上图的举例就是一个ContentPage对象包含了一个Label对象。

  现在我们来了解几个东西(其实都是命名空间),第一个是xmlns,如果你知道WPF或者Silverlight的话就知道这个的作用等同于using,唯一的区别在于xmlns必须要一个映射名

  如:xmlns:映射名=“xxxx.xxxx.xxxx.....”,就相当于C#中的using 映射名=xxxx.xxxx.xxxx....

  

  现在我们说说xmlns="http://xamarin.com/schemas/2014/forms"这个是什么意思,上头我们才说了xmlns必须有个映射名,为什么这个没有!!!!????这个呢是Xamarin.Forms的核心命名空间,它包含了构建Xamarin.Forms的用户界面的大部分控件类,他没有使用映射名,所以她也就是页面的默认命名空间,好吧,文字描述不是强项,简单的说,不要映射名的被这个给占用了,所以其他的都必须用映射名。当然你也可以在这个的上面加一个映射名像这样:

  

  如果我上面描述的不是很给力,你看这个应该也能了解一点点了撒,如果不了解也没关系,毕竟XAML的命名空间写书的话是可以写一章来进行讲解的,这里呢都是简单的说一下。

  接着说,xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"这个就是XAML的命名空间,包含XAML的使用特性,简单描述,举个例子,我们新建一个记事本,保存的时候都可以选择UTF-8,还是Union等编码方式,这个的作用就相当于这个编码方式,再简单点就是这个XAML的符合微软2009的XAML规范,好吧,我学艺不精,感觉总是不能描述的太清楚,还是看图吧

  

  好吧,前两个就说到这里,希望对大家有帮助,如果还比较模糊,不怪你,怪我,你也可以在看看上面的两张图,看下w和h写的地方再理解理解。

  继续x:Class="FormsTest01.From_01",这个我就真的简单说了,x:Class="xxxx.xxxx"就是告诉我们这个XAML要与哪个类合并

  

  命名空间就说到这儿。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  

  如果你想学习Xamarin.Forms,希望你能找书,找博客等等去系统的学习下XAML,这是基础,你必须得会,不然没得谈,还有MVVM。。。用四川话讲就是XAML相关的那一啪啦。

Xamarin.Forms学习之XAML命名空间的更多相关文章

  1. Xamarin.Forms学习之Platform-specific API和文件操作

    这篇文章的分享原由是由于上篇关于Properties的保存不了,调用SavePropertiesAsync()方法也不行,所以我希望通过操作文件的方式保存我的需要的数据,然后我看了一下电子书中的第二十 ...

  2. Xamarin.Forms 学习系列之底部tab

    App中一般都会有一个底部tab,用于切换不同的功能,在Xamarin中应该制作底部tab了,需要把Android的TabbedPage做一次渲染,IOS的则不用,接下来说下详细步骤: 1.在共享项目 ...

  3. Xamarin.Forms学习之位图(二)

    上篇文章分享了如何加载网络图片和PCL中的图片,所以今天继续分享关于如何加载平台的内嵌图片,在这之前说一下上篇文章开头的一个问题:为什么不能加载UWP项目,这是因为我升级了UWP的SDK,而Xamar ...

  4. Xamarin.Forms学习之Page Navigation(一)

    在最初接触Xamarin.Forms的时候,我是跟着Xamarin官方的名为“learning-xamarin-ebook”的pdf文档进行学习的,我在成功运行Hello world程序之后,我开始跟 ...

  5. Xamarin.Forms学习之初

    微软的Build 2016结束的有段时间了,对于一个简单的小屌丝程序员--我来说,关注最大的无疑是Xamarin的免费(开源什么的让大神们上吧),内心激动啊.大会结束的周末我就迫不及待的安装了,然后. ...

  6. Xamarin.Forms学习系列之Android集成极光推送

    一般App都会有消息推送的功能,如果是原生安卓或者IOS集成消息推送很容易,各大推送平台都有相关的Sample,但是关于Xamarin.Forms的消息推送集成的资料非常少,下面就说下Xamarin. ...

  7. Xamarin.Forms学习系列之Syncfusion 制作图形报表

    Syncfusion是一家微软生态下的第三方组件/控件供应商,除了用于HTML5和JavaScript的控件外,他们产品还涉及如下领域: WEB ASP.NET MVC ASP.NET WebForm ...

  8. Xamarin.Forms 学习系列之优秀UI收集

    1.各种优秀UI例子 https://github.com/jsuarezruiz/xamarin-forms-goodlooking-UI 输入框例子 https://github.com/enis ...

  9. Xamarin.Forms学习系列之SQLite

    在App中我们通常不会实时获取服务器数据,会在用户手机中保存历史数据,这个时候就需要用到数据库SQLite,由于微软的封装,在Xamarin中操作SQLite非常简单,类似EF的操作. 1.我们需要在 ...

随机推荐

  1. IOS Appstore价格表

  2. JavaScript完整性检查

    1.7个“坑” <!DOCTYPE html> <html lang="zh"> <head> <meta charset="U ...

  3. Visual Studio C++ MFC界面常用参数更改(改变图标,添加控件,调试打印函数等等)

    背景 需要使用Visual Studio C++做一些界面.此篇文章既是记录Visual Studio C++在调整界面时常常遇见的问题. 正文 一.如何更改窗体图标,以及生成的.exe图标 更改窗体 ...

  4. 架构师-盛大许式伟VS金山张宴

    许式伟:作为系统架构师,您一般会从哪些方面来保证网站的高可用性(降低故障时间)? 张宴:很多因素都会导致网站发生故障,从而影响网站的高可用性,比如服务器硬件故障.软件系统故障.IDC机房故障.程序上线 ...

  5. UnicodeEncodeError: ‘gbk’ codec can’t encode character u’\u200e’ in position 43: illegal multibyte sequence

    [问题] python中已获取网页: http://blog.csdn.net/hfahe/article/details/5494895 的html源码,其时UTF-8编码的. 提取出其标题部分: ...

  6. 数组传到后台 string[] 获取

    调试的 时候js  断点到后台 js上面也可以查看 传到后台的数据 方便查看~~

  7. 基于tornado实现web camera

    基于tornado实现web camera 近期在学习python.找了一个框架学习,我选择的是tornado.由于其不仅仅是一个web开发框架,其还是一个server,异步事件库,一举多得. 我一直 ...

  8. Hive substr 函数截取字符串

    开发中,经常进行模糊查询或者进行截取字符串进行模糊匹配,常用的就是substr函数或者substring函数. 使用语法: substr(string A, int start),substring( ...

  9. 【ODPS】UDF基础

     UDF全称User Defined Function,即用户自己定义函数.ODPS提供了非常多内建函数来满足用户的计算需求,同一时候用户还能够通过创建自己定义函数来满足 不同的计算需求. UDF ...

  10. 浅谈一致性hash

    相信做过互联网应用的都知道,如何很好的做到横向扩展,其实是个蛮难的话题,缓存可横向扩展,如果采用简单的取模,余数方式的部署,基本是无法做到后期的扩展的,数据迁移及分布都是问题,举个例子: 假设采用取模 ...