环境:MAC+Xamarin Studio

  先讲讲安装吧,最普遍的方法就是去Xamarin官网,注册个账号,填写信息啥的开始下载,安装。但,在天朝的网络环境下,在下载android模块的东东时,总会下载失败,但你又没办法跳过。我曾经挂了一个晚上去下载,抱着晚上网络质量应该好点的自我安慰侥幸心理,结果第二天早上来的时候发现,还是下载失败。为了避免各位新人再入坑,和大家说下另外一个下载方法,用Google搜索 xamarin studio download xml,进入网站 https://static.xamarin.com/installer_assets/v3/Mac/Universal/InstallationManifest.xml 中,找链接,分批下载,安装。下面截个图说明下:

OK,Xamrin Studio下载安装应该没啥问题了,再去App Store下载最新的Xcode,环境就算大功告成了。

  好,接下来,开始我们的第一个工程。这里我们选择Single View App

  

填好App Name,就建好一个IOS项目了

  

  新建工程的目录如下:

  

  OK,这样的项目是可以直接运行了,但是APP上什么内容也没有,一片白。接下来,我们弄点东东到APP上去。IOS开发,有两种方式可以进行控件布局。一种是在storyboard上,拖拉控件定位。一种是手撕代码,写控件。

  首先我们来讲第一种方式,利用storyboard进行布局。新建的项目,默认是storyboard方式的布局。我们所看到的一片白,就是Main.storyboard显示出来的。为什么会显示Main.storyboard上的布局呢,这和Info.plist中的设置有关,具体位置在下图中的红线标出来的位置。

  好,接下来,我们打开Main.storyboard文件,如下左图所示,其中红色矩形框出来的箭头,可以理解为起点,该箭头指向某个ViewController,APP就会以该ViewController作为LaunchScreen后首先显示的页面,设置的方式有两种,一种简单粗暴,直接拖拽;一种设置属性,选择ViewController,勾选下面右图红框内的属性即可。

    

  接下来,我们实现一个简单的功能,点击Button,改变View的background color。我们拖拽一个Button至View中,双击该Button,回车确定该事件的书写位置,即可创建该事件的方法,是不是和winform很像。

    public partial class ViewController : UIViewController
{
bool isWhite = true; protected ViewController(IntPtr handle) : base(handle)
{ } partial void UIButton10_TouchUpInside(UIButton sender)
{
if (isWhite)
{
this.View.BackgroundColor = UIColor.Red;
isWhite = false;
}
else
{
this.View.BackgroundColor = UIColor.White;
isWhite = true;
}
}
}

当然,也可以手撕一个事件,在storyboard上,Button属性中,给Button的Name赋值button。

public partial class ViewController : UIViewController
{
bool isWhite = true; protected ViewController(IntPtr handle) : base(handle)
{ } public override void ViewDidLoad()
{
base.ViewDidLoad();
button.TouchDown+=(o,s)=>
{
if (isWhite)
{
this.View.BackgroundColor = UIColor.Red;
isWhite = false;
}
else
{
this.View.BackgroundColor = UIColor.White;
isWhite = true;
}
};
}
}

  有心的同学可能会问了,一个storyboard是如何与.CS文件关联的呢?答案也在storyboard中,ViewController属性中的class选项便是与.CS文件关联的关键。

  还有同学会问了,我这个button只是设置了storyboard中的Button的name呀,怎么可以直接在类文件中直接用了,答案在类文件下的.designer.cs中

  

  这样,我们就算完成了第一个APP。

Xamarin.ios——First APP的更多相关文章

  1. Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面

    Xamarin.iOS - 利用Settings插件与EAIntroView制作App的欢迎界面 关于欢迎界面 很多App第一次启动都会有一个欢迎界面,欢迎界面往往决定这用户对App的第一映像,所以欢 ...

  2. Xamarin.iOS开发初体验

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0

  3. Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例

    看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...

  4. 1从零开始学习Xamarin.iOS安装篇

    安装和配置xamarin.ios 最近.net 开源新闻很火呀,于是想学习xamarin,早1年前就了解过这个东西,但是一直没有时间来学习,我这里装的是MAC上面的版本,废话不多说开始第一步安装. 概 ...

  5. Xamarin.iOS提供没有匹配的配置文件

    Xamarin.iOS提供没有匹配的配置文件 错误信息:No installed provisioning profiles match the installed ios code signing  ...

  6. iOS Simulator功能介绍关于Xamarin IOS开发

    iOS Simulator功能介绍关于Xamarin IOS开发 iOS Simulator功能介绍 在图1.38所示的运行效果中,所见到的类似于手机的模型就是iOS Simulator.在没有iPh ...

  7. 用c#开发苹果应用程序 xamarin.ios方式

    NetworkComms网络通信框架序言 Networkcomms网络通信框架来自于英国,支持以xamarin.ios的方式开发苹果应用程序 其开源版本2.3.1中带有一个示例程序,实现聊天功能,只要 ...

  8. 【Xamarin挖墙脚系列:Xamarin.IOS的程序的结构】

    原文:[Xamarin挖墙脚系列:Xamarin.IOS的程序的结构] 开始熟悉Xamarin在开发IOS的结构!!!!!!! 先看官方 这个是以一个单页面的程序进行讲述的. 1 程序引用的程序集,核 ...

  9. Xamarin IOS – hello word

    原文:Xamarin IOS – hello word 环境 硬件:Macbook pro Retina 13 系统:10.11.3 EI Capitan Xcode:7.0 Ps:配置刚刚够用. 安 ...

随机推荐

  1. 据说每个大牛、小牛都应该有自己的库——JavaScript原生对象拓展

    在据说每个大牛.小牛都应该有自己的库——框架篇中我扬言要做个小牛,没想到一天没更新,小伙儿伴们就戏谑的问我,油哥是不是要太监了?其实事情是这个样子的,这不是太监的节奏,一是,关于写个自己的库的想法由来 ...

  2. Linux内核TCP/IP参数分析与调优

    转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0225/167.html?1456482565 如下图展示的是TCP的三个阶段.1,TCP三次握手. ...

  3. Redis中统计各种数据大小的方法

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/125.html?1455853369如果 MySQL 数据库比较大的话,我 ...

  4. salesforce 零基础学习(四十二)简单文件上传下载

    项目中,常常需要用到文件的上传和下载,上传和下载功能实际上是对Document对象进行insert和查询操作.本篇演示简单的文件上传和下载,理论上文件上传后应该将ID作为操作表的字段存储,这里只演示文 ...

  5. C#多线程之旅(1)——介绍和基本概念

    原文地址:C#多线程之旅(1)——介绍和基本概念 C#多线程之旅目录: C#多线程之旅(1)——介绍和基本概念 C#多线程之旅(2)——创建和开始线程 C#多线程之旅(3)——线程池 C#多线程之旅( ...

  6. HTML5标签嵌套规则

    × 目录 [1]分类 [2]子元素 [3]总结 前面的话 在html5中,<a>元素的子元素可以是块级元素,这在以前是被认为不符合规则的.本文将详细介绍html5的标签嵌套规则 分类 ht ...

  7. Android线程之Looper

    之前已经为大家奉献了关于Handler和Message的使用,本篇我们来了解一下Handler内部的具体使用,本篇主要探讨Looper的在处理Handler的消息机制中起的重要作用,我们知道我们在子线 ...

  8. java session 详解

    原网址:http://blog.sina.com.cn/s/blog_670b6d880101deff.html 一.术语session 在我的经验里,session这个词被滥用的程度大概仅次于tra ...

  9. Mina、Netty、Twisted一起学(七):发布/订阅(Publish/Subscribe)

    消息传递有很多种方式,请求/响应(Request/Reply)是最常用的.在前面的博文的例子中,很多都是采用请求/响应的方式,当服务器接收到消息后,会立即write回写一条消息到客户端.HTTP协议也 ...

  10. RAC碎碎念

    1. 如何查看Oracle是否启动了RAC.  SQL> show parameter cluster_database; NAME TYPE VALUE ------------------- ...