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. div模拟下拉框

    1.模拟下拉框.点击文本框在文本框下面显示一个层divList,点击divList以外的任何地方,关闭divList层 document.body.onclick = function (e) { e ...

  2. Hadoop安装(Ubuntu Kylin 14.04)

    安装环境:ubuntu kylin 14.04   haoop-1.2.1   hadoop下载地址:http://apache.mesi.com.ar/hadoop/common/hadoop-1. ...

  3. [leetcode]_Valid Parentheses

    题目:判断给定字符串中的括号是否合法.题目中涉及三种符号'(' + ')' , '[' + ']' , '{' + '}'. 思路:利用stack来存储符号. 注意申请char型stack是: Sta ...

  4. [Linux] Ubuntu Server 12.04 LTS 平台上搭建WordPress(Nginx+MySql+PHP) Part II

    接着上一节继续搭建我们的LNMP平台,接下来我们安装PHP相关的服务 sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5- ...

  5. 了解Unix进程(1)

    今天瞎看 看到一本了解Unix进程 -- 理解UNIX进程 的书 不错,可以看看,使用的ruby语言,第一章讲的是一些基础的知识 1.输出进程号和父进程号: puts Process.pid # 得到 ...

  6. Google账户无法登陆-Solved

    Author:KillerLegend Date:2014.5.19 From:http://www.cnblogs.com/killerlegend/p/3737888.html 这几天不知道怎么回 ...

  7. web.xml中常见配置解读

    文章转自:http://blog.csdn.net/sdyy321/article/details/5838791 有一般XML都必须有的版本.编码.DTD <web-app>下子元素&l ...

  8. html中的框架

    1.总的代码 <frameset rows=20%,*> <frame src="top.html" /> <frameset cols=30%,*& ...

  9. 9.css背景

    这节也是关于盒模型的扩展,而我个人喜欢把盒模型想象成图画.元素的尺寸调整就是画布大小的调整,边框的设置就是画框的镶嵌.但是,作为一个最终要将画作展现到美术馆(网页)的艺术家来说,仅仅是这样还是不够的, ...

  10. Oracle Study Note : Tablespace and Data Files

    1.how to create a tablespace that employs the most common features create tablespace tb_name #create ...