java翻译到mono C#实现系列(1) 重写返回键按下的事件
今天看到群里的朋友问怎么按下返回键的时候提示信息,百度了下,就参考网上一个java版示例做了.没啥技术含量,就权当丰富下mono for android的小代码.
直接在mono新建的APP上修改的.
写个MessageBox类,负责提示各种消息.
showTips方法用来提示信息.
public override bool OnKeyDown重写了OnKeyDown方法.有空的朋友可以做漂亮点,我就懒得弄了,能看懂就行了.本人菜鸟,如果写的不对,请斧正.谢谢.
using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS; namespace AndroidApplication1
{
[Activity(Label = "AndroidApplication1", MainLauncher = true, Icon = "@drawable/icon")]
public class Activity1 : Activity
{
int count = ; protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle); // Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main); // Get our button from the layout resource,
// and attach an event to it
Button button = FindViewById<Button>(Resource.Id.MyButton); button.Click += delegate { button.Text = string.Format("{0} clicks!", count++); };
}
public class MessageBox
{
public static void Show(Context ctx, string title, string message)
{
AlertDialog.Builder dlg = new AlertDialog.Builder(ctx);
dlg.SetTitle(title);
dlg.SetMessage(message);
dlg.SetPositiveButton("确定", delegate { });
dlg.Show();
}
public static void ShowErrorMessage(Context ctx, Exception ex)
{
Show(ctx, "错误", ex.Message);
}
} private void showTips()
{ AlertDialog alertDialog = new AlertDialog.Builder(this)
.SetTitle("退出程序,嘿嘿")
.SetMessage("是否退出程序,嘿嘿")
.SetPositiveButton("确定,嘿嘿", delegate { MessageBox.Show(this, "提示", "恭喜你点确定了,不退出"); }).SetNegativeButton("取消", delegate { MessageBox.Show(this, "提示", "恭喜你点取消"); }).Show();//不退出,如果要退出就增加Finish();
//.SetPositiveButton("确定,嘿嘿", delegate { MessageBox.Show(this, "提示", "恭喜你点确定了,退出");Finish(); }).SetNegativeButton("取消", delegate { MessageBox.Show(this, "提示", "恭喜你点取消"); }).Show();
#region //注释的代码是java版
// private void showTips() {
// AlertDialog alertDialog = new AlertDialog.Builder(this)
// .setTitle("退出程序").setMessage("是否退出程序")
// .setPositiveButton("确定", new DialogInterface.OnClickListener()
// {
// public void onClick(DialogInterface dialog, int which)
// {
// finish();
// }
// }).setNegativeButton("取消",
// new DialogInterface.OnClickListener()
// {
// public void onClick(DialogInterface dialog, int which)
// {
// return;
// }
// }).create(); // 创建对话框
// alertDialog.show(); // 显示对话框
//}
#endregion
}
public override bool OnKeyDown(Keycode keyCode, KeyEvent events)
{
if (keyCode == Keycode.Back)//判断按下的键是否返回键
{
showTips();
return true;
}
else return base.OnKeyDown(keyCode, events);//如果不是返回键,则调用原OnKeyDown方法
#region //注释的代码是java版
//public boolean onKeyDown(int keyCode, KeyEvent event)
//{
// if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0)
// {
// showTips();
// return false;
// }
// return super.onKeyDown(keyCode, event);
//}
#endregion
}
}
}
代码下载:http://www.400gb.com/file/26907128
java翻译到mono C#实现系列(1) 重写返回键按下的事件的更多相关文章
- java翻译到mono C#实现系列(4) 利用CountDownTimer类实现倒计时功能 mono版
群里的朋友问利用CountDownTimer类实现倒计时功能怎么实现,我就百度了,参考http://blog.csdn.net/qq344429461/article/details/7521361写 ...
- java翻译到mono C#实现系列(3) 获取手机设备信息(残缺,)
using System; using Android.App; using Android.Content; using Android.Runtime; using Android.Views; ...
- java翻译到mono C#实现系列(2) mono实现GridView 横向滚动
群里的朋友问GridView 横向滚动怎么实现,我就百度了,参考http://blog.csdn.net/lonely_fireworks/article/details/7841134写了个mono ...
- Android应用系列:双击返回键退出程序
前言 有一个很古老的应用技巧,一直被各种大大小小的app用得乐此不疲,那就是双击返回键退出程序.今天就写写它的实现代码,非常简单而且实用. 正文 双击返回键退出程序,一般有两种实现思路,一种是用一个布 ...
- Java并发包源码学习系列:阻塞队列BlockingQueue及实现原理分析
目录 本篇要点 什么是阻塞队列 阻塞队列提供的方法 阻塞队列的七种实现 TransferQueue和BlockingQueue的区别 1.ArrayBlockingQueue 2.LinkedBloc ...
- [翻译svg教程]svg学习系列 开篇
目录 [翻译svg教程]svg学习系列 开篇 [翻译svg教程 ]svg 的坐标系统 [翻译svg教程]svg 中的g元素 [翻译svg教程]svg中矩形元素 rect [翻译svg教程]svg中的c ...
- java从入门到卖肠粉系列
java从入门到卖肠粉系列 注:本教程只是从JAVA基础开始,绝对不会跟公司有任何利益冲突,更不会出现一行公司项目的代码 QQ群:9547527 推荐用土豆,百度去上传太慢,百度云在线播放还要转码.. ...
- 【java集合框架源码剖析系列】java源码剖析之TreeSet
本博客将从源码的角度带领大家学习TreeSet相关的知识. 一TreeSet类的定义: public class TreeSet<E> extends AbstractSet<E&g ...
- 【java集合框架源码剖析系列】java源码剖析之HashSet
注:博主java集合框架源码剖析系列的源码全部基于JDK1.8.0版本.本博客将从源码角度带领大家学习关于HashSet的知识. 一HashSet的定义: public class HashSet&l ...
随机推荐
- context:propertyPlaceholder
Activates replacement of ${...} placeholders by registering a PropertySourcesPlaceholderConfigurer w ...
- Kinect相机位姿
可以直接得到吧 还是要反求 pose.txt 里面一共有5个七参数.正好对应5幅图片.
- Leader/Follower多线程网络模型介绍
之前分享过<轻量级 web server Tornado代码分析>,介绍了目前我们采用nginx + tornado的方式搭建升级.配管.数据中心等各类服务组建客户端迭代体系.最近注意到, ...
- android分屏
上手了Android N Preview,第一个不能错过的新特性就是App分屏的支持.Android7.0原生系统就可以支持两个App横屏并排或者竖屏上下摆放了.第二个新特性就是在Android TV ...
- tomcat下manager配置
1 安装Tomcat前需要先安装JDK.安装Tomcat后测试Tomcat成功安装. Tomcat Manager是Tomcat自带的.用于对Tomcat自身以及部署在Tomcat上的应用进行管理的w ...
- 基于微软XAML技术的前端开发方法
使用XAML技术的平台目前包括WPF,Silverlight,Windows8等平台,未来的Windows10统一Windows App也使用XAML技术. 前端开发指通过可视化集成开发环境进行用户界 ...
- 知识记录——Session与Cookie
Session: Session是“会话”的意思,然而,因为http协议是无状态的,那么每次客户端请求服务器端,服务器端都会以“崭新”的页面展示给客户端,这在静态的html页面中是不会存在任何影响,但 ...
- 解决IIS中Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
- IOS渠道追踪方式
本文来自网易云社区 作者:马军 IOS,安卓渠道追踪的差异 Google Play国内不可用,国内的安卓 App 分发,都是依托几十个不同的应用市场或发行渠道,如百度.360.腾讯等互联网企业以及小米 ...
- Neutron FWaaS 原理
理解概念 Firewall as a Service(FWaaS)是 Neutron 的一个高级服务.用户可以用它来创建和管理防火墙,在 subnet 的边界上对 layer 3 和 layer 4 ...