Xamarin.Forms学习历程(二)

哈哈哈~~我最近在写的Xamarin.Forms工程终于到了收尾阶段了,主体功能都实现了,修复一些小Bug以及添加些小功能就算完成了,太高兴了,心里满满的成就感,特别是安卓端界面完整呈现的时候。今天讲点知识点,搭建一个小程序。

认识Xamarin.forms的工程结构##

我们先撇开安卓和iOS,先来了解公共部分。我们继续看我们上期写的HelloWorld程序

Snip20160811_28.png

先看这一块,项目刚开始时就存在这些文件,我们来逐一看一下这些文件都是干嘛用的,以及里面放些什么文件。
估计有人会问我,为什么我的是中文版,其实我可以告诉你我也不知道,具体地说我的是中英文混合版,


Snip20160811_29.png

不闲扯了,还是回到刚才所说的,

  • 引用:这个我目前还没用到过,具体内容我不清楚,等我弄明白再回来补上吧(todo)
  • 包:这个是导入一些库,就像iOS工程里有时候需要导入一些framework一样。
  • Properties:这个我也不清楚(todo)
  • App.xaml:这个文件比较重要,是程序的入口,和iOS 里 AppDelegate这个文件的功能有些类似,所以定义初始界面就在这里面。
  • HelloWorldPage:这个文件和Xcode生成Single APP是生成的启动界面一样,默认第一个界面,删除不影响的。这里我们点开前面的小三角会发现这里面其实有两个文件:HelloWordPage.xamlHelloWordPage.xaml.cs,这里我说明一下,HelloWordPage.xaml相当于view,不涉及业务逻辑,只处理一些控件的显示和所要展示内容数据的绑定,相当于iOS里面的View。而HelloWordPage.xaml.cs里面正常情况下是写业务逻辑的,它和iOS里的ViewController很像,所以在这里面其实也是可以写界面的。不过代码规范正常情况下是不允许这么做的,但特殊情况可以理解。这两个文件是相关联的,绑定在一起。前段时间我把几个文件导入到其他工程,结果他们的关系就不存在了,我目前还不知道怎么让独立的两个文件绑定在一起。
  • packages:这个是包文件版本文件,工程内所有导入的包信息都可以在这里面看到,所以上传至git时不需要把包都上传,只需要把这个文件导入就可以了。
    好了,说了这么多我们来练一下手,按照自己的理解写个小小的应用程序。

优化版HelloWorld##

创建文件###

Snip20160811_30.png
Snip20160811_31.png

看到这个界面可能你会觉得无从下手,不要慌,我们先和他们握个手,认识一下

  • Forms ContentPage: 这里有个诀窍,看到Page,咱们就可以把它看成ViewController,这样就好理解了,Forms ContentPage就是创建一个Forms ContentPage.cs文件,也就是用纯C#代码写界面。
  • Forms ContentPage Xaml:一般情况用这个,他会创建一个ContentPage.xaml文件和ContentPage.xaml.cs文件,
  • Forms ContentView:这个是生成用纯C#代码在定义View的文件
  • Forms ContentView Xaml:这个和之前的类似,不用说你也应该能猜到。
Snip20160811_32.png

这里我们新建一个MyHelloWorld文件,让我们在里面写点东西

Snip20160811_33.png

我把里面的代码贴出来吧

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"       
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"         
              x:Class="HelloWorld.MyHelloWorld">    
<ContentPage.Content>        
    <StackLayout  VerticalOptions = "FillAndExpand"
                    HorizontalOptions = "FillAndExpand">            
              <Label Text = "Hello My World!"                    
                     TextColor ="Red"                
                      FontSize = "25"
                    VerticalOptions = "CenterAndExpand"                    
                    HorizontalOptions = "CenterAndExpand"/>        
  </StackLayout>    
</ContentPage.Content>
</ContentPage>

然后我们在APP文件配置一下

Snip20160811_34.png

这样运行就可以了

Snip20160811_35.png

这里我只是做个演示,代码我就不详细讲解了,后期我会逐渐深入的整理。

结语##

进度有点慢,一个星期才一篇,这是我深入理解后的结果。不过还是希望大神们能给点指点,Xamarin的路还很遥远。文章中一些见解是我个人理解,如有错误之处,还请给予指正,谢谢。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,525评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,203评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,862评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,728评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,743评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,590评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,330评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,244评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,693评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,885评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,001评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,723评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,343评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,919评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,042评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,191评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,955评论 2 355

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,144评论 25 707
  • 1.当在观影指南上看到了这部动画的评价,我就觉得一定要看它。刚刚看完,觉得又是一次心灵的洗礼。想到马云那句话,“梦...
    笑米迪阅读 180评论 0 0
  • 情入骨血后的生生分离, 撕心裂肺后的沉痛念想, 在某年某月某日, 春风拂面, 笑对柳绿花黄, 一切, 都是回不去的...
    井溢阅读 293评论 0 1
  • 露营的现在,浏览了一圈朋友圈,人人在怀着不同的心情抒发着自己的情绪......没有太多被触动,反而看到一个姐姐所发...
    不正常生物研究中心阅读 331评论 0 15