Visual Studio 跨平台开发实战(5) - Xamarin Android 多页面应用程式开发

转载 2014年03月03日 11:40:36
前言

大部份的Android 都具有实体或虚拟的Back鍵. 因此在处理多页面应用程式时, 与先前所介绍的iOS Navigation controller 比较起来会简单许多.

1. 开启Visual Studio 并新增Android Application 专案并命名为Lab4-MultiScreen

 

 

2. 在Layout资料夹中新增Second.axml

 

在Second.axml 中拖放1个TextView并标示此为第2个Activity

 

2. 在专案底下新增一个SecondActivity.cs. 在OnCreate事件中选写以下程式码:

1 SetContentView(Resource.Layout.Second);

3. 开启Activity1.cs, 在class name的地方按滑鼠右鍵=>重构=>重新命名. 将类别名称改为FirstActivity. 记得在方案总管中的档名也一并改为FirstActivity.cs

 

4. 开启Main.axml, 在画面中放置1个Button并指定Text属性值为”Load Second Activity”并将id 的属性值变更为”@+id/ShowSecond

5. 开启FirstActivity.cs, 在OnCreate事件中撰写以下程式码:

01 //载入页面
02  
03 SetContentView(Resource.Layout.Main);
04  
05 //宣告并取得按钮物件, 并在按钮的click事件处理中载入SecondActivity
06  
07 Button button = FindViewById< Button >(Resource.Id.showSecond);
08  
09 button.Click += delegate
10  
11 {…….按钮处理函式}

Button的click处理函式中, 我们将使用3种方法来载入SecondActivity.

  • 方法一: 使用内建的StartActivity方法, 程式码如下:
1 //呼叫其他Activity的第一种方法(隐含的建立Intent)
2  
3 StartActivity(typeof(SecondActivity));

  • 方法二: 建立Intent, 然后使用StartActivity载入其他SecondActivity. 程式码如下:
1 //呼叫其他Activity的第二种法, 建立Intent, 然后使用StartActivity载入其他Activity
2  
3 var second = newIntent(this,typeof(SecondActivity));
4  
5 StartActivity(second);

  • 方法三: 建立Intent, 并透过Intent.PutExtra载入Activity并传入参数. 程式码如下:
1 //使用Intent.PutExtra载入Activity并传入参数
2  
3 var second = newIntent(this,typeof(SecondActivity));
4  
5 second.PutExtra("FirstData","Data from FirstActivity");
6  
7 StartActivity(second);

上述的3种方式, 第1个跟第2个是一样的, 使用第1种方式, 会隐含简历一个Intent物件。

6. 执行专案并检视结果.

7. 透过上述的第3个方法, 可以像QueryString般传递参数到下一个Activity. 现在我们开启SecondActivity.cs. 透过Intent的GetStringExtra方法来取得参数的值. 在Oncreate方法中撰写以下程式码:

01 //载入页面
02  
03 SetContentView(Resource.Layout.Second);
04  
05 //宣告并取得TextView物件
06  
07 var label = FindViewById<textview>(Resource.Id.screen2Label);
08  
09 //透过Intent.GetStringExtra取得从前一个Activity所传来的讯息
10  
11 label.Text = Intent.GetStringExtra("FirstData") ??"Data not available";</textview>

在上述程式码中, 我们透过Intent的GetStringExtra(“参数名称”)来取得字串型別的参数. 事实上还可以透过类似的方法取得不同型別的参数值. 如下圖所示:

而??陈述式则是用来判断是否为Null的方便写法. 若取出的值为Null则显示后面的字串.

8. 执行专案并检视结果, 如下图所示

结语

在本篇文章中, 我们介绍Android 应用程式在多页面中的切换, 相较于iOS, Android 对于多页面的处理较为方便. 另外在Android中也提供Tab控制项在多页面之间进行切换.

 

本文转自:Terry's IT Note

了解更多移动跨平台解决方案,请访问:http://xamarin.csdn.net

 

Visual Studio 跨平台开发实战(5) - Xamarin Android 多页面应用程式开发

前言 大部份的Android 都具有實體或虛擬的Back鍵. 因此在處理多頁面應用程式時, 與先前所介紹的iOS Navigation controller 比較起來會簡單許多. 1. 開啟Visua...
  • u013695458
  • u013695458
  • 2014年03月03日 11:40
  • 7297

从零开始学Xamarin.Forms(三) Android 制作启动画面

Xamarin.Forms 在启动的时候相当慢,必须添加一个启动界面,步骤如下: 1.将启动画面的图片命名为:splash_screen.png,并拷贝到 Resources 文件夹下的相应 Draw...
  • zapzqc
  • zapzqc
  • 2014年08月11日 17:41
  • 16299

Visual Studio 跨平台开发实战(1) - Hello Xamarin!

前言 應用程式發展的腳步, 從來沒有停過. 從早期的Windows 應用程式, 到網路時代的web 應用程式, 再到近幾年相當盛行的行動裝置應用程式(Mobile Application), 身為C#...
  • u013695458
  • u013695458
  • 2014年03月03日 10:19
  • 12385

Visual Studio 跨平台开发实战--- Hello Xamarin! [Visual Studio + C# + Xamarin = iOS/Android/Windows Apps ]

前言 應用程式發展的腳步,從來沒有停過。從早期的 Windows 應用程式, 到網路時代的 web 應用程式,再到近幾年相當盛行的行動裝置應用程式 (Mobile Application),身為...
  • kingmax54212008
  • kingmax54212008
  • 2014年02月02日 21:56
  • 4913

完全免费!Xamarin应用商店最受欢迎的10款用户界面工具

概述:此文为你盘点Xamarin应用商店中最受欢迎的10款免费用户界面工具,附直达链接! Xamarin简化了针对多种平台的应用开发,包括iOS、Android、Windows Phone和...
  • gold0523
  • gold0523
  • 2016年04月06日 23:05
  • 634

Xamarin XAML语言教程页面布局篇

  • 2017年04月10日 11:26
  • 1.57MB
  • 下载

Xamarin.Forms开发实战基础篇大学霸内部资料

Xamarin iOS开发实战下册 (内部资料)
  • u014621518
  • u014621518
  • 2014年09月30日 16:36
  • 2141

Xamarin Android开发实战(上册)

Xamarin Android开发实战(上册)大学霸内部资料
  • u014621518
  • u014621518
  • 2015年04月02日 10:07
  • 1857

Xamarin应用商店最受欢迎的10款免费用户界面工具

Xamarin由许多著名的开源社区开发者创立和参与,而且也是Mono项目的主导者——C#与•NET框架的开源、跨平台实现。越来越多的企业和个人为Xamarin开发了种类繁多的免费和收费工具,下面就为你...
  • IBigPig
  • IBigPig
  • 2016年01月18日 15:36
  • 998

Xamarin学习笔记——4种不同的页面

Xamarin官网介绍了五种不同的页面,分别为: ContentPage MasterDetailPage NavigationPage CarouselPage TabbedPage 下面我们对这几...
  • abbydong
  • abbydong
  • 2016年04月22日 17:11
  • 2877
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Visual Studio 跨平台开发实战(5) - Xamarin Android 多页面应用程式开发
举报原因:
原因补充:

(最多只允许输入30个字)