Добавьте этот метод в свой контроллер вида.
Swift :
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
if text == "\n" {
textView.resignFirstResponder()
return false
}
return true
}
Этот метод также может быть полезен для вас:
/**
Dismiss keyboard when tapped outside the keyboard or textView
:param: touches the touches
:param: event the related event
*/
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
if let touch = touches.anyObject() as? UITouch {
if touch.phase == UITouchPhase.Began {
textField?.resignFirstResponder()
}
}
}
Это связано с тем, как десятичные значения преобразуются в двоичные числа с плавающей запятой. 1/10 превращается в повторяющуюся десятичную дробь в двоичном формате, поэтому число не представляется полностью, и повторяющиеся операции могут выявить ошибку.
JavaScript использует числа с плавающей запятой IEEE-754 для записи. У некоторых других языков такая же проблема.
Как с этим бороться? В вашем случае, возможно, toPrecision () .
Часть мантиссы (часть после десятичной точки) чисел с плавающей запятой хранится как сумма дробей. Их вычисляют путем добавления ряда фракций. Порядок дробей следующий:
1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128, ... etc
Двоичное представление сохраняется как 0 и 1, что означает да / нет. Например, 001010 будет 0 * 1/2 + 0 * 1/4 + 1 * 1/8 + 0 * 1/16 + 1 * 1/32.
Это грубый пример того, почему числа с плавающей запятой не могут быть точно. По мере того, как вы добавляете точность (float -> double -> long double), вы получаете большую точность до предела.
Базовые хранимые двоичные данные делятся на две части - одна для той части, которая появляется перед десятичной точкой, а другая для части после запятой. Это стандарт IEEE , который был принят из-за скорости, с которой могут выполняться вычисления (и, возможно, других факторов). http://docs.sun.com/source/806-3568/ncg_goldberg.html
http://docs.sun.com/source/806-3568/ncg_goldberg.html
Что каждый должен знать о числах с плавающей запятой.