http://blog.csdn.net/ozhangsan12345/article/details/72653070

第一步:创建timer对象

  1. //创建timer对象
  2. Timer _dispatcherTimer;
  3. //计数
  4. int sec = 60;

第二步: 实例化timer并给委托事件

  1. TimerCallback timerDelegate = new TimerCallback(Tick); //tick为执行防范
  2. _dispatcherTimer = new Timer(timerDelegate, null, 0, 1000);

//执行方法

  1. public void Tick(object state)
  2. {
  3. this.RunOnUiThread(() =>
  4. {
  5. if (sec > 0)
  6. {
  7. smsbt.Text = sec.ToString() + "秒可重发";
  8. sec--;
  9. }
  10. else
  11. {
  12. _dispatcherTimer.Dispose();
  13. sec = 60;
  14. smsbt.Text = "获取验证码";
  15. }
  16. });
  17. }

//使用

    1. {
    2. TimerCallback timerDelegate = new TimerCallback(Tick);
    3. _dispatcherTimer = new Timer(timerDelegate, null, 0, 1000);
    4. ProgressDialog progressDialog = ProgressDialog.Show(this, "", "请稍后...");
    5. new Thread(new ThreadStart(() =>
    6. {
    7. string url = this.GetString(Resource.String.url) + "/AppServices/userServices.aspx?action=regSms";
    8. using (var http = new HttpClient())
    9. {
    10. var content = new FormUrlEncodedContent(new Dictionary<string, string>() {
    11. { "phone",userphone.Text }
    12. });
    13. var response = http.PostAsync(url, content);
    14. string me = response.Result.Content.ReadAsStringAsync().Result;
    15. progressDialog.Dismiss();
    16. this.RunOnUiThread(() =>
    17. {
    18. HandleResult(me);
    19. });
    20. }
    21. })).Start();
    22. }

Xamarin.Android 使用Timer 并更改UI的更多相关文章

  1. Xamarin.Android 使用线程无法更改页面文本问题

    前言: 刚接触Xamarin.Android不到一个月时间,却被他折磨的不要不要的,随着开发会出现莫名其妙的问题,网上类似Xamarin.Android的文档也不多,于是本片文章是按照Java开发An ...

  2. 随感一:android handler传值更改ui

    handler+looper传值更改activity的UI 博客开了一段时间,一直想写点自己的学习经验及体会,等着以后长时间不用再要用到的时候直接拿过来上手.想了想,之前用到handler, 看了几篇 ...

  3. 更改Xamarin Android App名称

    更改Xamarin Android App名称   Xamarin Android生成的App名称默认和项目名一致.修改该名称有两种方式.   第一种方式:右击Android项目,选择“属性”命令,然 ...

  4. Visual Studio跨平台开发实战(4) - Xamarin Android基本控制项介绍

    原文 Visual Studio跨平台开发实战(4) - Xamarin Android基本控制项介绍 前言 不同于iOS,Xamarin 在Visual Studio中针对Android,可以直接设 ...

  5. Xamarin.Android开发

    使用 Visual Studio 生成第一个 Xamarin.Android 应用程序,并进一步了解使用 Xamarin 进行 Android 应用程序开发的基础知识.在此过程中,会介绍生成和部署 X ...

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

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

  7. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen深入理解

    原文链接:Hello, Android Multiscreen_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android Multiscreen深入理解. 本 ...

  8. [译]:Xamarin.Android开发入门——Hello,Android深入理解

    返回索引目录 原文链接:Hello, Android_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android深入理解 本部分介绍利用Xamarin开发And ...

  9. [译]:Xamarin.Android开发入门——Hello,Android快速上手

    返回索引目录 原文链接:Hello, Android_Quickstart. 译文链接:Xamarin.Android开发入门--Hello,Android快速上手 本部分介绍利用Xamarin开发A ...

随机推荐

  1. 关于ftp的学习:ftp很多人都会用。但会用,不代表我们真正了解它。

    ftp.sftp.ftps,您是否是也跟我一样搞不清楚他们的真正意义.它们之间有关联吗(究竟是何种关联),有区别吗(区别倒地在哪里). 亦或是以为自己知道它们,可我们真的了解并认识它们了吗? 如果您被 ...

  2. poj 2456 Aggressive cows && nyoj 疯牛 最大化最小值 二分

    poj 2456 Aggressive cows && nyoj 疯牛 最大化最小值 二分 题目链接: nyoj : http://acm.nyist.net/JudgeOnline/ ...

  3. vue——props的两种常用方法

    vue--props的两种常用方法 1.实现父-->子的通信 举例如下: 父组件 parent.vue <children :channel="object1"> ...

  4. labview生成可执行文件

    labview生成可执行文件可以分为两种情况. 第一种,是电脑中有labview软件开发环境的情况 第二种,是电脑中没有安装labview软件开发环境 下面是一个简单的labview代码: 程序解释: ...

  5. 诡异的 &quot;password取回&quot; 邮件问题

    大部分系统中都有"找回password"的功能,我们的平台也做了此功能,用户可通过 短信,邮件 找回password. 当中对于邮件找回password的方式遇到奇特的问题.记录下 ...

  6. keeplived日志位置指定

    作为一个运维DBA,除了关心数据库的关键指数.还得往架构和底层基础知识多靠拢. 2010年刚工作的时候,那会Cacti监控比較流行吧.可恶的是SNMP会把默认日志写到系统日志文件中面,导致排错时非常受 ...

  7. Property list types and their various representations

    iOS下Property list能够存储的数据类型  Property list types and their various representations  Abstract type XML ...

  8. Android系统匿名共享内存(Anonymous Shared Memory)Java调用接口分析

    一.Ashmem驱动程序 ~/Android/kernel/goldfish ----include ----linux ----ashmem.h ----mm ----ashmem.c 驱动程序具体 ...

  9. Woody的Python学习笔记1

    Python 是一种解释性语言:这意味着开发过程中省去了编译这个环节,类似于PHP\Perl. Python 是交互式语言:这意味着你能够在一个python提示符,直接互动运行写你的程序. Pytho ...

  10. tiny210(s5pv210)移植u-boot(基于 2014.4 版本号)——NAND 8位硬件ECC

    这节我们实现nand的ecc,保存环境变量到nand flash 中.然后把我们之前的led灯烧写到nand flash 中.开机启动.在 tiny210.h 中定义宏 CONFIG_S5PV210_ ...