একজন iOS ডেভেলপার হিসেবে একজনের জানা উচিত কিভাবে টেক্সট ফিল্ডের সাথে ম্যানিপুলেট করতে হয় এবং এটি পরিচালনা করে, Apple ইতিমধ্যেই UITextFieldDelegate প্রোটোকল প্রদান করেছে।
এটি সম্পর্কে আরও পড়তে https://developer.apple.com/documentation/uikit/uitextfielddelegate
আপনি হয়ত দেখেছেন যেখানে ফর্মগুলি জড়িত থাকে, এবং আপনি যখন ফর্মগুলিতে বিশেষভাবে টাইপ করেন যেখানে অক্ষরগুলি নির্দিষ্ট গণনার মধ্যে সীমাবদ্ধ থাকে তখন আপনি প্রবেশ করানো অক্ষরগুলির সংখ্যা দেখতে পান৷
আপনি যখন টেক্সটফিল্ডে টাইপ করবেন তখন আমরা এই পোস্টে অক্ষর গণনা কীভাবে প্রদর্শন করতে হবে তা দেখতে যাচ্ছি।
ধাপ 1 − Xcode খুলুন → নতুন প্রকল্প → একক দৃশ্য অ্যাপ্লিকেশন → আসুন এটির নাম রাখি “TextFieldCount”
ধাপ 2 − Main.storyboard খুলুন এবং দেখানো হিসাবে TextField এবং লেবেল যোগ করুন, লেবেল এবং পাঠ্য ক্ষেত্রের জন্য @IBOutlet তৈরি করুন এবং যথাক্রমে lblCount, txtInputBox নামে নাম দিন।

ধাপ 3 − ViewController.swift-এ প্রোটোকল UITextFieldDelegate এবং টেক্সটইনপুটবক্স সহ প্রতিনিধিকে নিজের কাছে নিশ্চিত করুন৷
class ViewController: UIViewController, UITextFieldDelegate {
txtInputBox.delegate = self পদক্ষেপ 4৷ − প্রতিনিধির অক্ষর পরিবর্তন করতে হবে এবং এর ভিতরে নিম্নলিখিত কোড লিখতে হবে।
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if(textField == txtInputBox){
let strLength = textField.text?.count ?? 0
let lngthToAdd = string.count
let lengthCount = strLength + lngthToAdd
self.lblCount.text = "\(lengthCount)"
}
return true
} ধাপ 5 - অ্যাপ্লিকেশনটি চালান, চূড়ান্ত কোডের জন্য,
উদাহরণ
import UIKit
class ViewController: UIViewController, UITextFieldDelegate {
@IBOutlet var txtInputBox: UITextField!
@IBOutlet var lblCount: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
txtInputBox.delegate = self
}
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if(textField == txtInputBox){
let strLength = textField.text?.count ?? 0
let lngthToAdd = string.count
let lengthCount = strLength + lngthToAdd
self.lblCount.text = "\(lengthCount)"
}
return true
}
} আউটপুট
