Вы можете сделать разные поля UITextField.
Когда пользователь вводит 4 цифры в текстовое поле, вы можете использовать метод shouldChangeCharactersInRange, чтобы вычислить, достигнут ли (или передан) максимум 4 цифр.
Когда это происходит, вы resignFirstResponder в текстовом поле и вызываете становитсяFirstResponder в следующем текстовом поле.