序言:

  在博客园注册了已经有2年多了,快三年了。从开始学习这一行开始就在博客园注册了这个账号。至今也还没有写过一篇随笔,大多时候都是在园子里头潜水,看大牛写的文章,学习。

  写博客不为啥,就是自己对自己学习的一个总结。从去年10月份开始学习的xamarin,没有安卓基础,就只有写了2年.net基础。然后就直接开始用于商业项目,就我一个人。我的天呐,

  把人给折磨疯了,不过到现在为止呢,已经做完了第一个,开始第二个了。

Andriod开发环境配置:

  我用的是VS2015 update2版本的,今年Build2016大会上微软宣布了免费Xamarin,对c#开发者无疑是一个福利。附上VS2015下载地址:

  ed2k://|file|cn_visual_studio_enterprise_2015_with_update_2_x86_x64_dvd_8510289.iso|7633639424|E0AFC01631C37BD3046EDBBC30FAB8CC|/
  SHA1: 93651E6653EB39D6B01EFE8543EA2204B7B0EBD3
 
有需要的朋友可以下载,安装的时候需要翻墙,建议单独下载AndroidSDK。找一些国内的镜像。

第一个安卓程序:

1.新建选择空白APP

打开后会发现有一个Resource文件夹,里面有drawable,layout,values三个文件夹

drawable:存放一些资源文件,如图片

layout:屏幕布局(或屏幕的一部分)的XML文件

values:很多种类型的资源的XML文件,

colors.xml 定义color drawable颜色的字符串值(color string values)

strings.xml定义字符串(string)值。

styles.xml 定义样式(style)对象。

2.打开Main.axml文件,会发现如下的界面。很丑陋。后面会讲到如何美化界面。这篇只为如何运行起来第一个AndroidAPP。

点击界面下方的source会发现如下的界面布局文件,有WPF编程的同学,应该看起来和眼熟。虽然Xamarin 支持手动拖拽控件,

不过个人觉得太low了,很多好看的界面布局还是要自己编写的。

3.既然介绍了main.axml,接下来介绍与之对应的Activity,界面布局叫做Main,那对应的Activity布局名称肯定是MainActivity。

4.接下来就是如何运行起来?既然是Android APP ,总不可能运行在Iphone,WIndowsPhone上吧,自然需要一个android手机。

如果身边没有的话,可以用android模拟器。模拟器的话,我推荐使用各位用:GenyMotion或者微软的Emulator,谷歌的虚拟机

那叫一个坑,真是谁用谁知道。附上Genymotion官方地址:http://www.genymotion.net/,需要注册下载,分个人免费版和企业版。

PS:建议用虚拟机,真机调试的话,还得安装手机驱动,麻烦。

附上一张Genymotion启动图:

如果你能看到一下界面,恭喜你,至少你Android环境至少配置对了。

5.试着调试下程序,在MainActivity的button.click打上断点,会发现进入了调试。

总结

用C#开发安卓就是这么简单,希望广大C#开发者能够大力支持,能够好好的扩大这个生态圈。

这也是小弟第一次写博文,格式实在不知道怎么排,见谅。后期会陆续写一些Xamarin android方面的文章,

会写自己从零开始学习Android并用于商业项目中遇到的问题,和一些遇到的问题。

Xamarin Android 之起始篇的更多相关文章

  1. 跟Google学习Android开发-起始篇-构建你的第一个应用程序(4)

    说明:此系列教程翻译自Google Android开发者官网的Training教程,利用Chome浏览器的自动翻译功能作初译,然后在一些语句不顺或容易造成误解的地方作局部修正.方便英文不好的开发者查看 ...

  2. 跟Google学习Android开发-起始篇-用碎片构建一个动态的用户界面(3)

    4.3 构建一个灵活的用户界面 当设计你的应用程序要支持大范围的屏幕尺寸时,你可以在不同的布局配置中重用碎片,来根据可用的屏幕空间优化用户体验. 例如,在手持设备上,它可能是适应来在一个单窗格用户界面 ...

  3. 跟Google学习Android开发-起始篇-与其它应用程序交互(1)

    6 与其它应用程序交互 一个Android应用程序通常有多个活动.每一项活动都将显示一个用户界面,允许用户执行某种特定任务(如查看地图或者照片).为了把用户从一个活动带到另一个,你的应用必须使用Int ...

  4. 跟Google学习Android开发-起始篇-与其它应用程序交互(2)

    6.2从活动获取结果 启动另一个活动不必是单向的.您也可以启动另一个活动,并接收一个结果回来.为了接收一个结果,调用startActivityForResult()(而不是startActivity( ...

  5. Xamarin Android组件篇教程RecylerView动画组件RecylerViewAnimators(1)

    Xamarin Android组件篇教程RecylerView动画组件RecylerViewAnimators(1) RecyclerView是比ListView和GridView更为强大的布局视图, ...

  6. Xamarin.Android Binding篇

    前言 趁着失业了,闲着没事儿学习了下Xamarin.Android binding,在以往的开发中,我相信很多人都遇到过binding的坑,也不例外, 我也踩了很多雷,好在认识了个大佬,指导了很多  ...

  7. Xamarin.Android开发实践(十一)

    Xamarin.Android之使用百度地图起始篇 一.前言 如今跨平台开发层出不穷,而对于.NET而言时下最流行的当然还是 Xamarin,不仅仅能够让我们在熟悉的Vs下利用C#开发,在对原生态类库 ...

  8. Xamarin.Android

    Xamarin.Android之使用百度地图起始篇 一.前言 如今跨平台开发层出不穷,而对于.NET而言时下最流行的当然还是Xamarin,不仅仅能够让我们在熟悉的Vs下利用C#开发,在对原生态类库的 ...

  9. Xamarin.Android和UWP之MVVM的简单使用(二)

    0x01 前言 前面一篇,Xamarin.Android和UWP之MVVM的简单使用(一),主要讲了MvvmLight的简单使用 这篇主要讲讲MvvmCross的简单使用,例子的话,还是和上篇的一样. ...

随机推荐

  1. Aaron Stannard谈Akka.NET 1.1

    Akka.NET 1.1近日发布,带来新特性和性能提升.InfoQ采访了Akka.net维护者Aaron Stannard,了解更多有关Akka.Streams和Akka.Cluster的信息.Aar ...

  2. 深入理解 JavaScript,以及 Linux 下的开发调试工具

    前言 JavaScript 是我接触到的第二门编程语言,第一门是 C 语言.然后才是 C++.Java 还有其它一些什么.所以我对 JavaScript 是非常有感情的,毕竟使用它有十多年了.早就想写 ...

  3. es6小白学习笔记(一)

    1.let和const命令 1.es6新增了let和const命令,与var用法类似,但它声明的变量只在let所在的代码块内有效(块级作用域,es5只有全局和函数作用域) { let a = 1; v ...

  4. Android之使用Bundle进行IPC

    一.Bundle进行IPC介绍 四大组件中的三大组件(Activity.Service.Receiver)都是支持在Intent中传递Bundle数据的,由于Bundle实现了Parcelable接口 ...

  5. Android中自定义样式与View的构造函数中的第三个参数defStyle的意义

    零.序 一.自定义Style 二.在XML中为属性声明属性值 1. 在layout中定义属性 2. 设置Style 3. 通过Theme指定 三.在运行时获取属性值 1. View的第三个构造函数的第 ...

  6. Atitit 知识管理的重要方法 数据来源,聚合,分类,备份,发布 搜索

    Atitit 知识管理的重要方法 数据来源,聚合,分类,备份,发布 搜索 1.1. Rss 简易信息聚合(也叫聚合内容 Really Simple Syndication1 1.1. Rss 简易信息 ...

  7. 搭建LNAMP环境(二)- 源码安装Nginx1.10

    上一篇:搭建LNAMP环境(一)- 源码安装MySQL5.6 1.yum安装编译nginx需要的包 yum -y install pcre pcre-devel zlib zlib-devel ope ...

  8. Java发展历史

    1991年1月 Sun公司成立了Green项目小组,专攻智能家电的嵌入式控制系统 1991年2月 放弃C++,开发新语言,命名为"Oak" 1991年6月 JamesGosling ...

  9. 【Win10 应用开发】实现数据的增量加载

    今天,老周有小故事讲,国庆期间.有一次老周在某站台上候公交车.老周旁边也站满了人,突然,有一位头发弄得像电线杆的小伙子,不知为何,没有先兆地就大笑起来. 老周先是看了那小伙子一眼,他手上没有拿什么东西 ...

  10. ASP.NET MVC5+EF6+EasyUI 后台管理系统(7)-MVC与EasyUI DataGrid

    系列目录 本节知识点 为了符合后面更新后的重构系统,文章于2016-11-1日重写 EasyUI读取MVC后台Json数据 开始实现 我们的系统似乎越来越有趣了 首先从前端入手,开打View下面的Sh ...