Last Updated: 23 August 2024 | Change Log

AccessCheckoutUITextField

You can customize your views. Here are the properties supported by our components:

Properties

In addition to the UIView class, here are the properties supported by our component:

PropertiesType
accessibilityHintString
accessibilityIdentifierString
accessibilityLabelString
accessibilityLanguageString
cornerRadiusCGFloat
borderColorUIColor
borderWidthCGFloat
textColorUIColor?
fontUIFont?
textAlignmentNSTextAlignment?
placeholderString?
attributedPlaceholderNSAttributedString?
keyboardAppearanceUIKeyboardAppearance
isEnabledBoolean
inputAccessoryViewUIView?
textContentTypeUITextContentType?

Methods

Important
To ensure you remain SAQ-A compliant, the AccessCheckoutUITextField component has been designed to not expose any methods or properties to retrieve the text entered by the end user.

In addition to the UIView class, here are the methods supported by our component:

Methods
clear()
becomeFirstResponder():Boolean
resignFirstResponder():Boolean
setOnFocusChangedListener(listener: @escaping (AccessCheckoutUITextField, Bool) -> Void)

Handling onFocus events

AccessCheckoutUITextField has support for onFocus events, allowing your application to update the UI dynamically when a user interacts with the AccessCheckoutUITextField

You must use the setOnFocusChangedListener method to react to focus changes.

The example below changes the border of the AccessCheckoutUITextField when the field gains focus to blue and changes it back to gray when the field loses focus.

cvcTextField.setOnFocusChangedListener { view, hasFocus in
    view.borderColor = hasFocus ? .systemBlue : .systemGray
}

Use XCUI for UI testing

AccessCheckoutUITextField acts as a wrapper around a UITextField. This is to ensure you can't access the UITextField and remain SAQ-A compliant.

Because of this, you must perform an action on the UITextField rather than on the AccessCheckoutUITextField.

You can access the UITextField by using the code below, where your-identifier corresponds to the id of the AccessCheckoutUITextField:

XCUIApplication().otherElements["your-identifier"].textFields.firstMatch