ইউআইটিেক্সটফিল্ড রিটার্ন কীতে কীভাবে একটি ক্রিয়া যুক্ত করবেন?


91

আমার দৃষ্টিতে আমার কাছে একটি বোতাম এবং পাঠ্য পাঠ্যক্ষেত্র রয়েছে। আমি যখন পাঠ্যক্ষেত্রটিতে ক্লিক করি তখন একটি কীবোর্ড উপস্থিত হয় এবং আমি পাঠ্যক্ষেত্রটিতে লিখতে পারি এবং আমি যুক্ত করে বাটনটি ক্লিক করে কীবোর্ডটি খারিজ করতে সক্ষম হয়েছি:

[self.inputText resignFirstResponder];

এখন আমি কীবোর্ডের রিটার্ন কী সক্ষম করতে চাই। আমি যখন কীবোর্ড টিপবো তখন কীবোর্ড অদৃশ্য হয়ে যাবে এবং কিছু ঘটবে। কিভাবে আমি এটি করতে পারব?


4
সম্ভাব্য অনুরূপ: stackoverflow.com/questions/4761648/...
wquist

উত্তর:


186

"স্ব" সাবস্ক্রাইব করে নিশ্চিত করুন UITextFieldDelegateএবং এর সাথে ইনপুট টেক্সট শুরু করুন:

self.inputText.delegate = self;

"স্ব "তে নিম্নলিখিত পদ্ধতিটি যুক্ত করুন:

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    if (textField == self.inputText) {
        [textField resignFirstResponder];
        return NO;
    }
    return YES;
}

বা সুইফটে:

func textFieldShouldReturn(_ textField: UITextField) -> Bool {
    if textField == inputText {
        textField.resignFirstResponder()
        return false
    }
    return true
}

11

দ্রুততম 3.0 এ এক্সটেনশন শৈলীর সাথে

প্রথমে আপনার পাঠ্য ক্ষেত্রের জন্য প্রতিনিধি স্থাপন করুন।

override func viewDidLoad() {
    super.viewDidLoad()
    self.inputText.delegate = self
}

তারপরে UITextFieldDelegateআপনার দৃশ্যের নিয়ামকের এক্সটেনশনের সাথে সামঞ্জস্য করুন

extension YourViewController: UITextFieldDelegate {
    func textFieldShouldReturn(_ textField: UITextField) -> Bool {
        if textField == inputText {
            textField.resignFirstResponder()
            return false
        }
        return true
    }
}

4

অন্যান্য উত্তরগুলি সঠিকভাবে কাজ করার সময়, আমি নিম্নলিখিতগুলি করা পছন্দ করি:

ViewDidLoad () এ, যোগ করুন

self.textField.addTarget(self, action: #selector(onReturn), for: UIControl.Event.editingDidEndOnExit)

এবং ফাংশন সংজ্ঞায়িত করুন

@IBAction func onReturn() {
    self.textField.resignFirstResponder()
    // do whatever you want...
}

-1

কীবোর্ড সম্পন্ন বোতামটি আলতো চাপলে UITextField থেকে প্রেরিত "প্রাথমিক অ্যাকশনট্রিজেড" ইউআইইভেন্টের জন্য টার্গেট-অ্যাকশন ইউআইকিট মেকানিজম ব্যবহার করুন।

textField.addTarget(self, action: Selector("actionMethodName"), for: .primaryActionTriggered)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.