1,介绍 键盘隐藏
a),自己在return事件中隐藏键盘。
tv.ShouldReturn = delegate {
tv.ResignFirstResponder ();
return true;
};
b),textfield 失去焦点隐藏键盘。
该方法主要分两种。一种是 view 的 touchesBegan 事件,如果第一个响应的控件不是textfield 则隐藏键盘。
领一种是 通过手势。
UITapGestureRecognizer tapGesture = new UITapGestureRecognizer (new Action<UITapGestureRecognizer> (delegate(UITapGestureRecognizer gesture) {
txt.ResignFirstResponder();
//.....
}));
tapGesture.CancelsTouchesInView = false;
this.ui_view.AddGestureRecognizer (tapGesture);
2,输入结束 验证输入的数据
tv.ShouldEndEditing = delegate {
//添加正则验证
if (!string.IsNullOrEmpty(tv.Text)) {
if (regStr!="") {
Regex regex = new Regex(regStr);
if(!regex.IsMatch(tv.Text))
{
tv.Text=string.Empty;
new UIAlertView("提示",errStr,null,"确定",null).Show();
}
}
}
Console.WriteLine (UIKeyboard.FrameEndUserInfoKey); ;
tv.ResignFirstResponder ();
return true;
};
3,开始输入控制 键盘的样式
tv.ShouldBeginEditing = delegate {
tv.KeyboardType = UIKeyboardType.NumberPad;
return true;
};