Xamarin.Android之山有木兮之木有枝,心悦君兮君不知。

第一步,写项目中的第一个界面。

<?xml version="1.0" encoding =" utf-8" ?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation= "vertical "
    android:layout_width= "fill_parent "
    android:layout_height= "fill_parent ">
 
  <TextView
      android:id="@+id/tv"
     android:layout_width= "fill_parent "
      android:layout_height="wrap_content"
      android:text="小晕,不醉。  先生:"
    />
 
  <Button
    android:id= "@+id/IntentBtn "
    android:layout_width= "fill_parent "
    android:layout_height= "wrap_content "
    android:text= "我说上联 "
    />
</LinearLayout>

第二步写项目中的第二个界面。


<?xml version="1.0" encoding =" utf-8" ?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation= "vertical "
    android:layout_width= "fill_parent "
    android:layout_height= "fill_parent ">
 
  <TextView
    android:id= "@+id/tv "
   android:layout_width= "fill_parent "
    android:layout_height= "wrap_content "
    android:text= "你好,请问美国怎么走?  女士: "
    />
 
  <Button
    android:id= "@+id/btnClose "
     android:layout_width= "fill_parent "
    android:layout_height= "wrap_content "
    android:text= "我答下联 "
    />
</LinearLayout>
 

第三步,写项目中的第一个界面的逻辑。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
 
namespace App1
{
    [Activity(Label = "HelloIntent",MainLauncher= true ,@Icon = "@drawable/Icon")]
    public class HelloIntent : Activity
    {
        protected override void OnCreate( Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView( Resource. Layout.HelloIntentLayout);
            Button button = FindViewById< Button>( Resource. Id.IntentBtn);
            button.Click += button_Click;
        }
 
        void button_Click( object sender, EventArgs e)
        {
            #region 简单意图到另外一个界面去
            //Intent it = new Intent();
            //it.SetClass(this, typeof(HelloIntent2));
            //StartActivity(it);
            #endregion
 
            string sendValue = "山有木兮木有枝" ;
            Toast.MakeText( this, sendValue, ToastLength.Short).Show();
            #region 显示传值               
            Intent it = new Intent();
            it.SetClass( this, typeof( HelloIntent2));
            it.PutExtra( "testName", sendValue);
            //此为普通调用。
          //  StartActivity(it);
            //当有返回值时用到,前一个参数是intent的对象,第一个是OnActivityResult方法里的requestCode。
            StartActivityForResult(it, 0);
            #endregion
        }
 
        protected override void OnActivityResult( int requestCode, Result resultCode, Intent data)
        {
            base.OnActivityResult(requestCode, resultCode, data);
            if (requestCode==0)
            {
                if ( Result.Ok==resultCode)
                {
                    string name = data.GetStringExtra( "nameExtra");
                    Toast.MakeText( this, name, ToastLength.Short).Show();
                }
            }
        }
    }
}

第四步,写项目中的第二个界面的逻辑

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
 
namespace App1
{
    [Activity(Label = "HelloIntent2")]
    public class HelloIntent2 : Activity
    {
        protected override void OnCreate( Bundle bundle)
        {
            base.OnCreate(bundle);
           SetContentView( Resource. Layout.HelloIntentLayout2);
            #region 显示传递参数,这边要得到传递过来的值。
            string uName = Intent.GetStringExtra( "testName");
            Toast.MakeText( this, uName, ToastLength.Long).Show();
            #endregion
 
            Button btnClose = FindViewById< Button>( Resource. Id.btnClose);
            btnClose.Click += btnClose_Click;
        }
 
        void btnClose_Click( object sender, EventArgs e)
        {
            string sendValue = "心悦君兮君不知" ;
            Toast.MakeText( this, sendValue, ToastLength.Short).Show();
            Intent it = new Intent();
            it.PutExtra( "nameExtra", sendValue);
            SetResult( Result.Ok,it);
            Finish();
        } 
    }
}

故事情节:

小伙子向暗恋的小姑娘说了一句话,他说:山有木兮木有枝。

小姑娘看到了小伙子说的话(成功将值带入到第二个界面):

小姑娘在思索中,应该怎么回自己也心仪的小伙子呢。

于是,她想到了,她羞答答的,她回了,她说心悦君兮君不知。

然后小伙子看到了小姑娘的话,小伙子满意的笑了。

学习内容:

签于太简单,略。请自行看官网

Xamarin.Android之山有木兮之木有枝,心悦君兮君不知。的更多相关文章

  1. XAMARIN.ANDROID SIGNALR 实时消息接收发送示例

    SignalR 是一个开发实时 Web 应用的 .NET 类库,使用 SignalR 可以很容易的构建基于 ASP.NET 的实时 Web 应用.SignalR 支持多种服务器和客户端,可以 Host ...

  2. XAMARIN ANDROID 二维码扫描示例

    现在二维码的应用越来越普及,二维码扫描也成为手机应用程序的必备功能了.本文将基于 Xamarin.Android 平台使用 ZXing.Net.Mobile  做一个简单的 Android 条码扫描示 ...

  3. 我正在使用Xamarin的跨平台框架—Xamarin.Android回忆录

    一.缘起 在自己给别家公司做兼职外包的时候,已经明确知道外包的活不是那么好干的,一般在经历了初期热血澎湃的激情后,逐渐冷淡,愤怒,再冷淡,再愤怒…,听上去好像高潮迭起,但令人尴尬的是,这高潮迭起我们都 ...

  4. APP并非一个人在战斗,还有API—Xamarin.Android回忆录

    前言 一般来说,一个客户端APP并非独立存在的,很多时候需要与服务器交互.大体可分为两方面的数据,常规字符串数据和文件数据,因为这两种数据很可能传输方式不一样,比如字符串之类的数据,使用HTTP协议, ...

  5. Xamarin.Android通知详解

    一.发送通知的机制 在日常的app应用中经常需要使用通知,因为服务.广播后台活动如果有事件需要通知用户,则需要通过通知栏显示,而在Xamarin.Android下的通知需要获取Notification ...

  6. Xamarin.Android之SQLiteOpenHelper

    一.前言 在手机中进行网络连接不仅是耗时也是耗电的,而耗电却是致命的.所以我们就需要数据库帮助我们存储离线数据,以便在用户未使用网络的情况下也可以能够使用应用的部分功能,而在需要网络连接的功能上采用提 ...

  7. Xamarin. Android实现下拉刷新功能

    PS:发现文章被其他网站或者博客抓取后发表为原创了,给图片加了个水印 下拉刷新功能在安卓和iOS中非常常见,一般实现这样的功能都是直接使用第三方的库,网上能找到很多这样的开源库.然而在Xamarin. ...

  8. Xamarin Android 之起始篇

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

  9. [译]:Xamarin.Android平台功能——位置服务

    返回索引目录 原文链接:Location Services. 译文链接:Xamarin.Android平台功能--位置服务 本部分介绍位置服务以及与如何使用位置提供商服务 Location Servi ...

随机推荐

  1. libevent和基于libevent的网络编程

    1 libevent介绍和安装 介绍 libevent是一个轻量级的基于事件驱动的高性能的开源网络库,并且支持多个平台,对多个平台的I/O复用技术进行了封装,当我们编译库的代码时,编译的脚本将会根据O ...

  2. php时间转换unix时间戳

    本文介绍了php编程中unix时间戳转换的小例子,有关php时间转换.php时间戳的实例代码,有需要的朋友参考下. 第一部分,php 时间转换unix 时间戳实现代码. 复制代码代码示例: <? ...

  3. Js学习笔记一(鼠标事件.....)

    1.encodeURI与decodeURI()转化url为有效的url(能被识别) Url="http://news.baidu.com/p.php?id='测试'&姓名=hkui& ...

  4. MIME类型

    多用途互联网邮件扩展(MIME,Multipurpose Internet Mail Extensions)是一个互联网标准,它扩展了电子邮件标准,使其能够支持非ASCII字符.二进制格式附件等多种格 ...

  5. C#从数据库读取数据到DataSet并保存到xml文件

    using System; using System.Data; using System.Xml; using System.Data.SqlClient; using System.IO; pub ...

  6. 基于.NET的WebService的实现和WCF的实现

    1.新建一个MVC web项目. 2.点击项目,[右键]→[添加]→[新建项] 3.点击[Web]→[Web服务] 4.恭喜,Web Service已经新建成功,里面的方法就可以参考着根据自己的需要进 ...

  7. 9 本免费的 Python 语言编程书籍(转载)

    9 本免费的 Python 语言编程书籍 原文地址:http://linuxtoy.org/archives/9-free-python-books.html 2010-03-03 Toy Poste ...

  8. C#模糊查询绑定datagridview

    private CollectionViewSource wgdData = new CollectionViewSource(); private DataTable Ds_wgd { get { ...

  9. Mybatis typeAliases别名

    <typeAliases> <typeAlias type="com.green.phonemanage.model.CellPhone" alias=" ...

  10. Oracle 将普通表转换为分区表

    DB:11.2.0.30 将普通表转换为区分表 一.利用原表重建分区表SQL>create table yoon ( id number primary key ,time date ); Ta ...