第一个Xamarin的 Android(安卓)应用程序!
你好,安卓
Xamarin的工作室
- Xamarin的应用程序图标和启动屏幕
-
- 脱机使用PDF格式:
- 介绍与Xamarin的Android开发
-
- 示例代码:
在这个由两部分组成的指南,我们建立我们的第一次Xamarin的。 Android应用程序使用Xamarin的工作室或Visual Studio和发展的理解与Xamarin的Android应用程序开发的基本原理。 一路上我们将介绍工具,概念,构建和部署Xamarin的所需的步骤。 Android应用程序。
你好,Android快速入门
在这个场景,我们创建一个应用程序,将用户输入的一个字母数字的电话号码转换为一个数字电话号码,,然后调用这个数字。 最终的应用程序看起来像这样:
让我们开始吧!
加速Android模拟器
:本指南是一个跨平台开发系列的一部分。 我们接你好,iOS预排离开和Android应用程序添加到一个共同的解决方案。 如果你有兴趣学习iOS和Android,我们建议从你好,iOS指南。 如果你宁愿专注于安卓系统,我们添加了一些步骤来帮助你建立Android-only解决方案。 一旦设置您的解决方案,您可以完成你好,Android和你好,Android新潮的指南。
配置您的模拟器使用硬件加速。 说明
- 最新版本的OS X山狮以上Xamarin的工作室。
- 最新版本的Windows 7以上Xamarin的工作室。
集。Xamarin的。 安卓系统安装导游。
在我们开始之前,请下载Windows 7及以上与Visual Studio 2010专业或更高版本。Xamarin的应用程序图标和启动屏幕
配置模拟器
Android模拟器有几个选项。 标准的安卓 设置仿真器是最简单的,但跑得慢。 Xamarin的建议 你使用的高性能指南。Xamarin的Android的球员 需求 。 如果你不使用Xamarin的Android的球员,你应该这个预排假设Xamarin的最新版本。 安装和运行在Android平台的选择。 Xamarin的安装指南。 Android,参考请注意
可选的设置——Android应用程序
如果你遵循这些步骤没有完成了你好,iOS预排。 如果你已经配置Phoneword解决方案,你可以继续下面的介绍。
-
让我们启动Visual Studio,这将打开启动屏幕:
-
点击开始>新项目创建一个新的解决方案:
-
在新项目对话框中,单击其他项目类型> Visual Studio解决方案。 选择空白的解决方案模板。 名新解决方案
Phoneword
:
现在我们已经配置我们的解决方案,我们可以继续介绍我们的解决方案添加一个Android应用程序。
预排
-
Phoneword解决方案如果不开放了。 在(左边的区域),打开右边的灰色的齿轮图标(右边的区域),右键单击:添加>新项目…从解决方案和选择对话框中,让我们选择
-
:在接下来,让我们扩大Visual c# > Android并选择
添加新项目
模板。 我们将新项目名称 -
在设计表面和按下按钮打开它的Android设计师。 这是我们的布局文件屏幕:接下来,让我们扩大资源布局文本
-
删除文本(大)文本
的
财产的工具箱(左边的区域),输入“文本(大)
“在搜索字段并拖动控制在设计表面(区域中心):控制在设计表面(区域中心): -
与文本(大)控制选择表面上的设计,我们可以使用属性面板中改变文本财产的文本(大)控制”
输入一个Phoneword:
”: -
接下来,让我们拖纯文本控制的工具箱设计表面和下面文本(大)控制:
-
与纯文本控制选择表面上的设计,我们可以使用属性面板中改变ID财产的纯文本控制
@ + id / PhoneNumberText
和改变文本属性”1 - 855 - xamarin的
”: -
让我们把按钮控制的工具箱设计表面和下面纯文本控制:
-
与按钮选择表面上的设计,我们可以使用属性面板中改变ID财产的按钮来
@ + id / TranslateButton
和改变文本属性”翻译
”: -
接下来,让我们拖到另一个按钮控制的工具箱设计表面和下面按钮TranslateButton
- 控制选择表面上的设计,我们可以使用改变解决方案垫 窗格项目按钮和改变
项目通过点击旁边的灰色的齿轮图标
与:文本调用
”:让我们拯救我们的工作按
Ctrl + S
现在,让我们添加一些代码翻译电话号码从字母数字到数字。 我们将添加一个新文件 -
Phoneword_Droid在解决方案资源管理器PhoneTranslator窗格中,选择添加>新项目…:
-
项目添加新文件对话框中,让我们选择Visual c#代码> >类和名称的新文件
PhoneTranslator.cs
: -
这将创建一个新的空c#类。 让我们消除所有的模板代码,代之以以下代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54using System.Text; using System; namespace Core { public static class PhonewordTranslator { public static string ToNumber(string raw) { if (string.IsNullOrWhiteSpace(raw)) return ""; else raw = raw.ToUpperInvariant(); var newNumber = new StringBuilder(); foreach (var c in raw) { if (" -0123456789".Contains(c)) newNumber.Append(c); else { var result = TranslateToNumber(c); if (result != null) newNumber.Append(result); } // otherwise we've skipped a non-numeric char } return newNumber.ToString(); } static bool Contains (this string keyString, char c) { return keyString.IndexOf(c) >= 0; } static int? TranslateToNumber(char c) { if ("ABC".Contains(c)) return 2; else if ("DEF".Contains(c)) return 3; else if ("GHI".Contains(c)) return 4; else if ("JKL".Contains(c)) return 5; else if ("MNO".Contains(c)) return 6; else if ("PQRS".Contains(c)) return 7; else if ("TUV".Contains(c)) return 8; else if ("WXYZ".Contains(c)) return 9; return null; } } }
Ctrl + S保存文件,点击文件>保存
(或按
保存您的更改 -
接下来我们将添加代码来连接用户界面。 让我们支持代码添加到MainActivity类。 双击MainActivity.cs在首先连接了解决方案资源管理器
-
MainActivity
TranslateButton
。 在类,找到
oncreate
方法。 我们将添加按钮代码内部oncreate
,低于base.OnCreate(包)
和SetContentView(Resource.Layout.Main)
调用。 因此,删除模板代码oncreate
方法类似于下面的代码:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25using System; using Android.App; using Android.Content; using Android.Runtime; using Android.Views; using Android.Widget; using Android.OS; namespace Phoneword_Droid { [Activity (Label = "Phoneword_Droid", MainLauncher = true)] public class MainActivity : Activity { protected override void OnCreate (Bundle bundle) { base.OnCreate (bundle); // Set our view from the "main" layout resource SetContentView (Resource.Layout.Main); // Our code will go here } } }
-
接下来,我们需要控制我们的引用在布局文件中创建使用Android的设计师。 在添加以下代码
oncreate
方法:1
2
3
4// Get our UI controls from the loaded layout EditText phoneNumberText = FindViewById<EditText>(Resource.Id.PhoneNumberText); Button translateButton = FindViewById<Button>(Resource.Id.TranslateButton); Button callButton = FindViewById<Button>(Resource.Id.CallButton);
-
现在让我们添加代码来响应用户按第一个按钮时,我们命名
TranslateButton
。 下面添加以下代码内部控制定义oncreate
方法:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21// Disable the "Call" button callButton.Enabled = false; // Add code to translate number string translatedNumber = string.Empty; translateButton.Click += (object sender, EventArgs e) => { // Translate user’s alphanumeric phone number to numeric translatedNumber = Core.PhonewordTranslator.ToNumber(phoneNumberText.Text); if (String.IsNullOrWhiteSpace(translatedNumber)) { callButton.Text = "Call"; callButton.Enabled = false; } else { callButton.Text = "Call " + translatedNumber; callButton.Enabled = true; } };
-
接下来让我们添加代码来响应用户迫切的第二个按钮时,我们命名
CallButton
。 我们将以下代码下面的代码TranslateButton
:1
2
3
4
5
6
7
8
9
10
11
12
13
安卓系统清单
文件。 通过双击打开安卓清单callButton.Click += (object sender, EventArgs e) => { // On "Call" button click, try to dial phone number. var callDialog = new AlertDialog.Builder(this); callDialog.SetMessage("Call " + translatedNumber + "?"); callDialog.SetNeutralButton("Call", delegate { // Create intent to dial phone var callIntent = new Intent(Intent.ActionCall); callIntent.SetData(Android.Net.Uri.Parse("tel:" + translatedNumber)); StartActivity(callIntent); }); callDialog.SetNegativeButton("Cancel", delegate { }); // Show the alert dialog to the user and wait for response. callDialog.Show(); };
-
许可:打开它:,检查Phoneword_Droid在成功。解决方案资源管理器。 选择Android清单节点:
下属性构建>构建所有构建>重建解决方案让我们拯救我们的工作,然后通过选择构建应用程序
-
让我们拯救我们的工作,然后通过选择重建应用程序或按
CTRL-SHIFT-B
“如果有错误,我们可以通过前面的步骤和纠正任何错误,直到应用程序构建
-
我们现在有一个工作应用程序和它的时间添加收尾工作! 让我们开始通过编辑标签2
3
”:1为我们的的顶部
MainActivity
类,改变标签成功。Phoneword
标签)。 如果我们的应用程序编译,我们将得到一条成功消息在左下角的Visual Studio:
MainActivity
。 的
7
4
和删除现有的
6
文件夹下namespace Phoneword_Droid { [Activity (Label = "Phoneword", MainLauncher = true)] public class MainActivity : Activity { ... } }
-
你可以设置应用程序名称和图标在Android清单:
让我们开始通过改变应用程序的名字“Phoneword”:
-
接下来,让我们来设置应用程序图标。 首先,下载Xamarin的应用程序图标设置。 接下来,扩大可拉的其通过右键单击它并选择文件夹中。 选择:从选择对话框中,让我们浏览目录并打开解压Xamarin的应用程序图标
可拉的:文件夹并选择
-
文件夹下和删除现有的可拉的:
-
当对话框出现时,点击添加>现有项目……删除
对话框中,选择
其 -
可拉的- *文件夹@drawable /图标
从文件夹:
Visual Studio中的文件夹应用程序图标这些文件夹现在所示您的项目的一部分面板:到项目中。 这些文件夹图标的提供不同的决议,呈现不同的设备有不同的屏幕上正确的密度。
解决方案资源管理器接下来,让我们添加其余的Xamarin的应用程序图标:
-
项目作为你的创业项目,右键单击项目
集
从应用程序图标: -
设置为启动项目你好,iOSXamarin的Android的球员 并选择
角落的IDE:的这个截图所示,我们已经选择了 应用程序Phoneword_Droid右键单击项目作为你的创业项目如果你工作完成后通过本指南Phoneword_Droid 项目解决方案资源管理器设置说明。
Xamarin的虚拟设备运行Android的球员。最后,我们可以测试我们的应用程序被部署到一个Android模拟器。 如果你还没有配置模拟器,请参阅节点的属性。 下编译使用Android版本:,选择一个API水平等于或小于模拟器您想要使用的API级别。 选择的模拟器目标Android设备工具栏上的下拉菜单。 在这个例子中,我们使用MonoForAndroid_API_10模拟器,我们编译该项目使用API级别10:
-
点击开始启动模拟器,并部署应用程序。 下面的截图说明了Phoneword模拟器中运行的应用程序。 在一些模拟器,您可能需要点击按钮或回家菜单按钮查看运行的应用程序。 单击翻译按钮更新的文本调用按钮,点击调用Xamarin的见解
在应用程序列表中,您可以看到Phoneword与前面配置的图标显示应用程序:
xamarin.forms祝贺你完成你的第一个Xamarin的。 Android应用程序! 现在是时候解剖我们刚刚学到的的工具和技巧Xamarin的工作室
更多相关文章
- Android(安卓)Studio初体验
- No resource found that matches the given name 'Theme.AppComp
- Android(安卓)Studio Can not reslove *的解决方案
- 【转】使用Intent将图片或文字分享到新浪微博等程序
- android 9.0 拍照 相册选择 图片 裁切后进行 上传到服务器(亲测可
- Android(安卓)Studio与Eclipse SDK无法更新解决方案
- Android学习08-----Android中的基本控件(下)(6)_菜单:Menu和隐式抽
- android 选择layout的规则
- Android仿微信图片选择器(二)