UnderLineTextField 2.1.0

UnderLineTextField 2.1.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2018 年 10 月
SPM支持 SPM

Mohammad Ali Jafarian 维护。



  • 作者
  • Mohammad Ali Jafarian

Build Status Carthage Compatible CocoaPods

UnderLineTextField

具有状态的简单 UITextfield 子类

demo

安装

Cocoapods

您可以使用 cocoapods 将 UnderLineTextField 添加到项目中

target 'MyApp' do
  pod 'UnderLineTextField', '~> 2.0'
end

Carthage

您可以使用 Carthage 将 UnderLineTextField 添加到项目中

要通过 Carthage 将 UnderLineTextField 集成到 Xcode 项目中,请在您的 'Cartfile' 中指定它

github "mohammadalijf/UnderLineTextField"

运行 carthage update 以构建框架,然后将从构建中获得 UnderLineTextField.framework 拖到您的 Xcode 项目中。

在Cocoa框架中,Xcode不支持'IBDesignable'或'IBInspecatable'。对于使用Carthage的用户,创建了一个简单的'UnderLineTextFieldCarthage.swift'文件。它是对'UnderLineTextfield'的包装,可以在项目中使用以支持'IBDesignable'和'IBInspecatable'。只需简单地将'UnderLineTextFieldCarthage.swift'放入您的项目中,并用此类代替'UnderLineTextfield'。

如何使用它

下划线文本字段

每个文本字段有四种状态

  • 非活动

    当文本字段没有错误或警告,并且已从第一个响应者处释放时

  • 活动

    当文本字段成为第一个响应者时

  • 警告

    当您想向用户显示警告时

  • 错误

    当您想向用户显示错误时

默认情况下,文本字段具有'.inactive'状态

文本字段具有不同的UnderLineTextFieldValidateType。每次调用validate()时都会告诉文本字段。

  • 即时

    文本字段值更改时立即发生

  • 编辑后

    文本字段执行完编辑后立即发生

  • 提交时

    手动获取验证

  • 总是

    始终验证文本字段。当开始编辑时,当值更改时,当执行了编辑时

默认值是'.afterEdit'

您可以通过设置validationType来更改验证类型

 underLineTextField.validationType = .always

您可以通过调用以下内容来请求文本字段验证用户的输入

underLineTextField.validate()

下划线文本字段委托

此外,您还有下划线文本字段委托来帮助您处理文本字段。当类确认了下划线文本字段委托协议时,它也确认了UITextFieldDelegate。因此,您将同时有权访问这两个委托方法。

  • 验证文本字段

这个函数会在您要求文本字段进行验证用户输入时被调用。您通常想在这里设置警告或错误状态。

func textFieldValidate(underLineTextField: UnderLineTextField) throws

您可以选择抛出一个警告或错误

func textFieldValidate(underLineTextField: UnderLineTextField) throws {
    throw UnderLineTextFieldErrors
                    .error(message: "error message")
    // or
    throw UnderLineTextFieldErrors
                    .warning(message: "warning message")
}
  • 文本字段文本更改

这个函数会在文本更改时被调用。或使用清除按钮。

func textFieldTextChanged(underLineTextField: UnderLineTextField)