java翻译到mono C#实现系列(4) 利用CountDownTimer类实现倒计时功能 mono版

群里的朋友问利用CountDownTimer类实现倒计时功能怎么实现,我就百度了,参考http://blog.csdn.net/qq344429461/article/details/7521361写了个mono版的.

本人菜鸟,请各位多多指点,不足之处,请斧正.没啥技术含量,就权当丰富下mono for android的小代码.

using System;

using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using Java.Util; namespace AndroidApplication5
{
[Activity(Label = "AndroidApplication5", MainLauncher = true, Icon = "@drawable/icon")]
public class Activity1 : Activity
{
private MyCount mc;
private TextView tv; protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
tv = (TextView)FindViewById(Resource.Id.MyButton);
mc = new MyCount(this,, );
mc.Start();
}
public class MyCount : CountDownTimer
{
private Activity context = null;
TextView tv ;
public MyCount(Activity Activity,long millisInFuture, long countDownInterval): base(millisInFuture, countDownInterval)
{
this.context = Activity;
tv = (TextView)context.FindViewById(Resource.Id.MyButton);
}
public override void OnTick(long millisUntilFinished)
{
DateTime date=new DateTime(millisUntilFinished);
String str = date.ToString();
Console.WriteLine(str);
tv.SetText("请等待70秒(" + millisUntilFinished / + ")...", TextView.BufferType.Normal);
}
public override void OnFinish()
{
tv.Text = "finish";
}
}
public override void Finish()
{
base.Finish();
mc.Cancel();
}
}
}

原java版

public class MainActivity extends Activity {
private MyCount mc;
private TextView tv; @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView)findViewById(R.id.show);
mc = new MyCount(70000, 1000);
mc.start();
}
class MyCount extends CountDownTimer{ public MyCount(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
System.out.println("你好");
}
@Override
public void onTick(long millisUntilFinished) {
Date date = new Date(millisUntilFinished);
SimpleDateFormat sdf = new SimpleDateFormat("hh:mm:ss");
String str = sdf.format(date);
System.out.println(str);
tv.setText("请等待70秒("+millisUntilFinished / 1000 +")...");
}
@Override
public void onFinish() {
tv.setText("finish");
}
}
@Override
protected void onDestroy() {
super.onDestroy();
mc.cancel();
}
}
上一篇:DM8168 解码显示模块代码阅读分析


下一篇:用STS和Maven的方式创建一个JavaWeb项目