У меня есть CollectionView с CollectionViewCells, которые я переключил. Сначала у меня есть это
После того, как я получу вторую ячейку с кодом
Я использую одни и те же продажи с разными методами для изменения текста, но в первом cell.textField в качестве пользовательской библиотеки cocoapod TKFormTextField, а во втором случае я хочу использовать простой UITextField. Что такое enum и как мне его использовать?
вот моя клетка
class PhoneNumberCollectionViewCell: UICollectionViewCell, NiBLoadable {
@IBOutlet weak var phoneLabel: UILabel!
@IBOutlet weak var PhoneNumberTextField: UITextField!
@IBOutlet weak var SecurityLabel: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
Decorator.decorate(self)
}
func setPhoneLabelText(text: String) {
phoneLabel.text = text
}
func setSecurityLabel(text: String) {
SecurityLabel.text = text
}
}
extension PhoneNumberCollectionViewCell {
fileprivate class Decorator {
static func decorate(_ cell: PhoneNumberCollectionViewCell) {
cell.phoneLabel.textColor = UIColor(red: 50.0/255.0, green: 50.0/255.0, blue: 50.0/255.0, alpha: 1.0)
cell.SecurityLabel.textColor = UIColor(red: 50.0/255.0, green: 50.0/255.0, blue: 50.0/255.0, alpha: 0.6)
cell.phoneLabel.font = UIFont(name: "OpenSans", size: 15)
cell.SecurityLabel.font = UIFont(name: "OpenSans", size: 12)
}
}
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let models = model[indexPath.row]
switch models {
case .phoneNumber:
if let cell = collectionView.dequeueReusableCell(withReuseIdentifier: PhoneNumberCollectionViewCell.name, for: indexPath) as? PhoneNumberCollectionViewCell {
cell.PhoneNumberTextField.text = self.phoneNumber
cell.setSecurityLabel(text: "_ALLYOURDATAISINSECUREDAREA")
cell.setPhoneLabelText(text: "_YOURPHONENUMBER")
return cell
}
case .confirmCode:
if let cell = collectionView.dequeueReusableCell(withReuseIdentifier: PhoneNumberCollectionViewCell.name, for: indexPath) as? PhoneNumberCollectionViewCell {
cell.PhoneNumberTextField.text = self.confirmCode
cell.setPhoneLabelText(text: "_ENTERCODEFROMSMS")
cell.setSecurityLabel(text: "_IFYOUDIDNTRECIEVETHESMS")
cell.PhoneNumberTextField.defaultTextAttributes.updateValue(5.0, forKey: NSAttributedString.Key(rawValue: NSAttributedString.Key.kern.rawValue))
return cell
}
}
return UICollectionViewCell.init()
}