相关疑难解决方法(0)

UITextField,当第一个响应者辞职时,导致奇怪的动画滚动文本

我在UITableView中为登录表单实现了几个UITextField.当第一次在第一次响应第一响应者,发生了一个非常奇怪的动画跳跃.由于这些几乎完全是在Interface Builder中使用.xib文件构建的,因此我几乎没有要添加的代码.但是这里有一个有趣的.gif来显示行为:

更新:

我把它缩小到我正在听键盘事件来调整视图约束的事实.这是导致问题的代码:

func keyboardWillHide(notification: NSNotification) {
    // tried self.formContainer.layoutIfNeeded() here too to force pending layouts
    formContainerYConstraint.constant = 40
    UIView.animateWithDuration(0.4) { () -> Void in
        self.formContainer.layoutIfNeeded()
    }
}
Run Code Online (Sandbox Code Playgroud)

...表单容器是一个包含表视图和登录按钮的视图.

interface-builder uitextfield ios swift

9
推荐指数
1
解决办法
581
查看次数

UITextField:开始输入时,文本字段反弹,然后反弹

我也用UITextView看过这个.显然,我遗漏了一些非常基本的东西.

我试过: - 将textsize设置为small - UITextField:设置1行,不调整大小 - 删除移动texfield的功能

import UIKit

class XViewController: UIViewController, UITextFieldDelegate, UIGestureRecognizerDelegate {

    // UI elements
    let cancelButton = UIButton()
    let okButton = UIButton()
    var image:UIImage?
    var previewImageView:UIImageView = UIImageView()
    let textField = UITextField()
    let tapGestureRecognizer = UITapGestureRecognizer()
    let textFieldTypingPositionY:CGFloat = 200
    var textFieldActualPositionY:CGFloat!
    let textFieldHeight:CGFloat = 40

    var draggingTextField:Bool = false

    override func viewDidLoad() {
        super.viewDidLoad()

        // Do any additional setup after loading the view.
        setupTextField()
    }

    func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString text: String) …
Run Code Online (Sandbox Code Playgroud)

uitextfield uitextview ios

1
推荐指数
1
解决办法
1380
查看次数

标签 统计

ios ×2

uitextfield ×2

interface-builder ×1

swift ×1

uitextview ×1