Android(Xamarin)之旅(一)

简介: 原文:Android(Xamarin)之旅(一)Xamarin废话我就不多说了。   就是一款编写Android和IOS应用的IDE,从Visual Studio2010就开始有个这个插件。只要发展什么的,我觉得在这里说还不如自己去百度呢。
原文: Android(Xamarin)之旅(一)

Xamarin废话我就不多说了。

  就是一款编写Android和IOS应用的IDE,从Visual Studio2010就开始有个这个插件。只要发展什么的,我觉得在这里说还不如自己去百度呢。

入正题:

一、安装和配置(以Visual Studio Pro 2015为例)

  Visual Studio2015直接提供了这个插件的选择项,稍微提示一下,如果要安装的话,最好准备好十个小时的打算,而且是网速不错的情况下,因为要下载Android api和 Java sdk等相关的组件,是很耗时的,当然,可以分步骤装,比如,先安装默认的配置,只安装默认的C#配置项,然后再修复的时候,点击安装,再选择Xamarin,其实这样的目的只不过是为了让视觉误差而已,如果网速不够,还是很慢很慢的。

 如图,在此情况下

    

就是本来安装好C#默认配置的情况下,再次运行安装包,会有三个按钮 '修改'、'修复'、'卸载',此时我们选择修改,然后再跨平台移动开发的Xamarin前面勾选就可以了,至于Android SDK和Java SDK,强烈建议手动下载。

  为了方便期间,直接去 http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html 下载java sdk,去百度搜索一下 Android Studio,就可以下载Android sdk等等相关的东西了。安装完成之后会出现 SDK Manage、AVD Manager,这对于我们来说已经够用了。

  android studio具体安装:http://www.cnblogs.com/mfryf/archive/2013/05/20/3089143.html

  安装完成之后,要下载SDK和android虚拟机校验。完成之后,就可以配置,如果是直接一次性安装的,是不需要配置,如果是分开的,则可以打开Visual studio2015在 “工具”→“选项” 里面找到Xamarin,然后分别配置一下。

    

    

  其中,包含android下载,就是sdk更新,和虚拟机管理等等。网上有很多办法。我这里给大家提供 API 23的Host方式,网上找到的一般都是API19之前的,我也找了很久,才找到API 23 的代理方式。

  路径:C:\Windows\System32\Drivers\etc  在这个文件夹下面的hosts文件,右键,记事本或者其他的文本编辑器打开,在最后添加上

  74.125.20.31 dl-ssl.google.com
  74.125.136.138 developer.android.com
  203.208.41.128 dl.google.com

  这三个地址就可以了,请注意,将这个三个地址加到Hosts文件的后面就可以了

二、重要的时刻来了,我们也飞一下代码

  一个简单的例子,请参照:http://www.cnblogs.com/madyina/p/4671708.html   其实呢,这位大哥,已经弄了一个,但是之前我出错的地方就是前面我提到的,API更新和 SDK Manager这里,其他的可以参照这位大哥写的。这里,我就把我用到的控件和一些写法,和大家分享一下。

  在装逼之前,我先整理一下,整个的Android文件目录。

    

目录结构如图:

  1、Properties这里指的项目的属性,其中 AndroidManifest.xml 在java里面是一个很重要的注册文件,但是在这里具体怎么用,请原谅,我还没有搞清楚。至于AssemblyInfo.cs这个文件我就不说了。

  2、Assets这个文件夹,目前我也没有明白,但是我感觉他是一个解释性的文件夹,可以不理睬,包括里面的文档。

  3、Resources这个文件夹是相当的重要呀,基本上程序里面所有的东西都是从这里出去的。

    (1)drawable 资源文件夹,相信大家都看到后缀名了,类似的资源文件都可以放在这里。

    (2)layout 视图文件夹,我们能看到的,可以给我们视觉效果的,都放在这里。如图:

    这是Main.xml

    (3)values 自定义xml文件的文件夹,存的是一些常用的xml信息。

  4、Resource.Designer.cs这个文件就是所有的Resources文件都要在这个文件里面生成唯一的对应关系的。如图

  

  这是我们刚才看到的Drawable的文件夹,里面的每一张图片在这里都生成了唯一的对应常量。

  5、GettingStarted.Xamarin  这个呢,不知道怎么解释了,看图,一下就明白了

  

  6、MainActivity 这也是最重要的一个cs文件,因为我们的后台代码基本上都是从这里出去的。

  友情提示一下:添加资源文件的时候请注意xml文件,后面加上 “s” 虽然我不知道为什么这个玩意这个狗屎,但是,不加 “s” 我资源文件的id里面没有找到,也就是说用不了。

下面直接开始一些组件的用法

  一、TextView

<TextView
        android:text="@string/tv_phone"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textColor="@color/yellow"
        android:autoLink="phone"
        android:textSize="48px"
        android:id="@+id/tv_Color"
        android:gravity="center" />

 

   这是界面代码,我觉得这个解释起来没有必要了,我就说下其中的textColortext这两个的写法,首先,大家会看到这里有一个@,“@”在android里面,就是引用资源的意思。@string,引用string 。@string/tv_phone 这里的意思就是引用 strings.xml下面的 name=“tv_phone”的资源。在前面已经说到在 Resources的文件夹下面定义了Strings.xml文件。这里就是对于资源文件的一个运用。

  这就是我的Strings.xml文件,相信大家已经看明白了什么。

在这里,我提示一下大家的是就是autoLink这个属性,这个属性就是电话号码可以直接拨打的意思。

  二、ImageView

<ImageView
        android:src="@drawable/administrator"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/iv_change_url" />

   就是这个样子的,值得注意的是, 如果你是从工具栏里面直接拖过来的ImageView,那么请注意他的写法  android:src="@android:drawable/ic_menu_gallery"  这个东西前面的@android真心是个喳喳,就因为这个问题,我搞了小半个小时才找到毛病,直接用@drawable就可以了,但是因为一个android没有删除,各种生成不成功。

  三、EditText

<EditText
        android:id="@+id/et_txt"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:inputType="phone"
        android:hint="@string/et_txt" />

   对于这个组件,就解释一下 inputType="phone" 在这里的意思就是说当我们开始输入的时候默认的打开的是拨号键盘,因为phone都是数字么,意思就是打开的就是数字键盘,还有就是hint,可以叫做提示信息,就是html5里面的placeholder属性。

  四、Button

<Button
        android:id="@+id/btn_Call"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/btn_ChangColor" />

   对于Button,界面其实很这样了,但是,最主要的是我们的后台代码哦。

  五、后台代码

  前面已经说到了,后台代码都是在 MainActivity这个下面写的

  如图,看着像过滤器的这个东西

  

  Label就是你的apk的表头的名字,Icon就是对应的图标,接下来的看注释就可以了

  

  1、就以前面的btn_ChangColor为例,他的单击事件应该这么写

   

  编写对应的事件

  

  2、这里因为实现了View.IOnClickListener这个接口,接口是这么实现的

  

  此时我们亦可以用 SetOnClickListener 方法,那么,因为实现了接口么,就这么干,就OK。

   Button btn_change = FindViewById<Button>(Resource.Id.btn_Chang);
   btn_change.SetOnClickListener(this);

  

  3、还可以传统写法

  

  对应的事件

  

  4、在传统写法的基础上,之前的版本我没有试过,但是Visual Studio 2015确实可以这么写

  

  OK,就到这里,原谅我这个新手。有兴趣大家可以一起研究。

 

目录
相关文章
|
6月前
|
开发工具 Android开发 iOS开发
使用xamarin开发Android、iOS报错failed to open directory: 系统找不到指定的文件
使用vs2019学习xamarin时,创建新程序。使用模拟器真机等测试都报错如下图错误: ![请在此添加图片描述](https://developer-private-1258344699.cos.ap-guangzhou.myqcloud.com/column/article/5877188/20231030-de8ce5fd.png?x-cos-security-token=r4KyZDEowPT0kGTL0LqE8EnwfN1Nzexadb05dcffed3939ff8d7591c528c01706nvpGSE93QwHpZM8NwhJNTZctNRQa0l3KDhEnqj8P7d8t
63 0
使用xamarin开发Android、iOS报错failed to open directory: 系统找不到指定的文件
|
Java C# Android开发
.NET(WinCE、WM)开发转Android开发 ——Xamarin和Smobiler对比
WinCE从1995年诞生至今,已有20多年的发展历史,行业成熟方案覆盖范围广,从车载、工控、手持机都有涉及,且方案成熟。 近些年,Android以后来居上的态势,逐渐渗透至各行业领域,硬件手持大厂也把产品线重心向Android手持迁移,基于Android的行业解决方案越来越成熟,WinCE的开发人才流失,在WinCE解决方案上吃老本的企业寻求转型。
|
Web App开发 测试技术 Android开发
xamarin开发android收集的一些工具
原文:xamarin开发android收集的一些工具 xamarin开发android收集的一些工具 工欲善其事,必先利其器,从16年下半年开始做xamarin相关的开发,平时使用的一些工具和google插件给大家分享一下,都有下载地址,持续更新。
1487 0
|
Web App开发 JSON API
Xamarin android 调用Web Api(ListView使用远程数据)
xamarin android如何调用sqlserver 数据库呢(或者其他的),很多新手都会有这个疑问。xamarin android调用远程数据主要有两种方式: 在Android中保存数据或调用数据库可以利用SQLite,android中提供了几个类来管理SQLite数据库,对数据进行增删改查 直接调用Asp.net Web API对数据进行增删改查 这两种方式到底选择哪一种方式好一点呢?哪一种方式好不好我不敢确定,市场上大部分app都是调用api来clud的。
1302 0
|
Android开发 数据格式 XML
Xamarin Android Gestures详解
通过Gesture的监听我们将实现一个,手指的快速滑动显示坐标的变化,我们先来看一看效果图: 1.Android中手势交互的执行顺序 1.手指触碰屏幕时,触发MotionEvent事件! 2.
1001 0
|
Android开发 Java 数据格式
Xamarin Android自定义文本框
xamarin android 自定义文本框简单的用法 关键点在于,监听EditText的内容变化,不同于java中文本内容变化去调用EditText.addTextChangedListener(mTextWatcher);为EditText设置内容变化监听! 简单来说就是添加一个AfterTextChanged 事件就OK了,这是最简单的一种做法,当然你要想java那样去监听也可以的。
1142 0
|
缓存 Android开发 数据格式
xamarin android viewpager的用法
1.什么是ViewPager 通过手势滑动可以完成view的切换,一般是用来app的引导页或则实现图片轮播,类似网页上的banner轮播. Adnroid 3.0后引入的一个UI控件,在xamarin android 的开发中必须引入v4兼容包(ps这里有坑,菜鸟需要注意) 和ListVie...
1183 0
|
Android开发
xamarin android listview的用法
listview也许是用的非常频繁的一个控件之一,下面我写一个xamarin的listview栗子,大家尝一尝xamarin android开发的乐趣。原谅我的大小写吧. listview绑定自定义的BaseAdapter 先来看一下最终实现的效果图: News.
996 0
|
Android开发 Java
xamarin android如何监听单击事件
在xamarin android单击事件是最基础的事情,看过菜鸟上的android教程时,java写的都是监听事件,为一个按钮,单选按钮、多选按钮的单击事件有三种,前面两种用的非常普遍,也很简易,我这里主要就是写一下xamarin android中的监听事件。
1112 0
|
Android开发 数据格式 XML
xamarin android checkbox自定义样式
xamarin android checkbox自定义样式 在drawable文件在新建checkbox_bg.xml文件 //状态为选中 //状态为没选中 //默认的必须的有一个 在values文件夹中新建一个Style.
1264 0