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. IIS报错 未将对象引用设置到对象的实例。

    在vs中运行正常的项目 ,发布到IIS总是提示 未将对象引用设置到对象的实例. 运行静态页面 html正常,只是打开.aspx页面的时候报错,在确保了数据库,配置,权限均正常的情况下. 错误原因:先安 ...

  2. 三、第一个Struts2应用案例(编码步骤)

    第一个Struts2应用案例(编码步骤) 编写2个jsp hello.jsp <body>     <a href="${pageContext.request.conte ...

  3. 《你是我的小羊驼》游戏源码 v1.0

    游戏分析三个界面基本上就是整个游戏的全部内容:1.左边的是主界面,展示游戏名称以及主角,让玩家对游戏的整体画风有个大概的印象.2.中间的是游戏界面,点击空格防止橙色六边形砖块来围堵小羊驼.3.右边的是 ...

  4. 介绍一点.NET反编译的知识

    反编译是我们理解.NET内部实现的一种良好的手段. 程序编译时 Test.exe是IL代码.我们可以通过一些工具,来查看这些IL代码. 一模一样? 理论上来说,一模一样的反编译是不存在的.原因有以下3 ...

  5. CentOS学习笔记--目录配置

      Linux目录配置 类Linux的目录看上去差不多,为什么? 以下内容节选自l 鸟哥的 Linux 私房菜 -- 基础学习篇目录  第六章.Linux 的文件权限与目录配置 3. Linux目录配 ...

  6. puppet实现主从部署各种软件实战参考模型

    puppet实现主从部署各种软件实战参考模型   实验要求:     1.我将准备三个节点 node2 , node3 , node4 2.我们想让节点node3部署ntp,nginx ;节点node ...

  7. linux系统下将php和mysql命令加入到环境变量中的方法

    在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行 “php -v”命令查看当前php版本信息时时 ...

  8. javascript中for/in循环及使用技巧

    JavaScript 支持不同类型的循环: for - 循环代码块一定的次数 for/in - 循环遍历对象的属性 while - 当指定的条件为 true 时循环指定的代码块 do/while - ...

  9. 后缀为inc的是什么文件?C#中如何包含inc文件?

    在项目Web页面文件中,发现这么一句话: <!-- 页面字符集设置 begin--><!-- #INCLUDE FILE="http://www.cnblogs.com/C ...

  10. silverlight 获取路径 config

    1.获取web.config配置内容: web.config default.aspx protected string InitParams { get; set; } InitParams = s ...