উত্তর:
প্রথমে আপনাকে UITextFieldDelegate
আপনার ভিউ / ভিউকন্ট্রোলারের শিরোনাম ফাইলটিতে প্রোটোকলটি মেনে চলতে হবে :
@interface YourViewController : UIViewController <UITextFieldDelegate>
তারপরে আপনার .m ফাইলে আপনাকে নিম্নলিখিত UITextFieldDelegate
প্রোটোকল পদ্ধতিটি প্রয়োগ করতে হবে :
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
[textField resignFirstResponder];
কীবোর্ড খারিজ করা হয়েছে তা নিশ্চিত করে।
আপনি .m তে পাঠ্যক্ষেত্রটি শুরু করার পরে আপনি আপনার ভিউ / ভিউ কনট্রোলারটিকে ইউআইটিেক্সটফিল্ডের প্রতিনিধি হিসাবে সেট করছেন তা নিশ্চিত করুন:
yourTextField = [[UITextField alloc] initWithFrame:yourFrame];
//....
//....
//Setting the textField's properties
//....
//The next line is important!!
yourTextField.delegate = self; //self references the viewcontroller or view your textField is on
ইউআইটিেক্সটফিল্ডডেলিগেট পদ্ধতিটি এর মতো প্রয়োগ করুন:
- (BOOL)textFieldShouldReturn:(UITextField *)aTextField
{
[aTextField resignFirstResponder];
return YES;
}
এই বিষয়ে সম্পূর্ণ আলোচনার জন্য কীবোর্ড পরিচালনা করা দেখুন ।
আপনার ইউআইটিেক্সটফিল্ডগুলির একটি প্রতিনিধি অবজেক্ট (ইউআইটিেক্সটফিল্ডডেলিগেট) থাকা উচিত। কীবোর্ড অদৃশ্য হয়ে যাওয়ার জন্য আপনার প্রতিনিধিতে নিম্নলিখিত কোডটি ব্যবহার করুন:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
}
এখন পর্যন্ত কাজ করা উচিত ...
আমাকে বেশ কয়েকটি পরীক্ষা নিয়েছিল, একই সমস্যা ছিল, এটি আমার পক্ষে কাজ করেছে:
আপনার বানানটি এখানে পরীক্ষা করুন -
(BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
আমি textField
পরিবর্তে আমার সংশোধন textfield
করে "এফ" কে বড় করুন ... এবং বিঙ্গো !! এটা কাজ করেছে..
বেশ কিছুটা সময় শিকারের পরে কিছু বোঝার পরে যে বিষয়টি বোঝায়, এটি এটিই আমি একত্রিত করেছি এবং এটি একটি কবজির মতো কাজ করেছে।
জ
//
// ViewController.h
// demoKeyboardScrolling
//
// Created by Chris Cantley on 11/14/13.
// Copyright (c) 2013 Chris Cantley. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController <UITextFieldDelegate>
// Connect your text field to this the below property.
@property (weak, nonatomic) IBOutlet UITextField *theTextField;
@end
.m
//
// ViewController.m
// demoKeyboardScrolling
//
// Created by Chris Cantley on 11/14/13.
// Copyright (c) 2013 Chris Cantley. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// _theTextField is the name of the parameter designated in the .h file.
_theTextField.returnKeyType = UIReturnKeyDone;
[_theTextField setDelegate:self];
}
// This part is more dynamic as it closes the keyboard regardless of what text field
// is being used when pressing return.
// You might want to control every single text field separately but that isn't
// what this code do.
-(void)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
}
@end
আশাকরি এটা সাহায্য করবে!
আপনার ভিউকন্ট্রোলারটিতে ইউআইটিেক্সটফিল্ডের প্রতিনিধি সেট করুন, ফাইলের মালিক এবং ইউআইটিেক্সটফিল্ডের মধ্যে একটি রেফারেন্সিং আউটলেট যুক্ত করুন, তারপরে এই পদ্ধতিটি প্রয়োগ করুন:
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
if (textField == yourTextField)
{
[textField resignFirstResponder];
}
return NO;
}
প্রাক সংজ্ঞায়িত শ্রেণীর পরিবর্তে এটি যুক্ত করুন
class ViewController: UIViewController, UITextFieldDelegate {
কীবোর্ডের বাইরে ক্লিক করার সময় কীবোর্ড অপসারণ করতে
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
self.view.endEditing(true)
}
এন্টার টিপলে কীবোর্ড অপসারণ করতে
এই লাইনটি ভিউডিল্ডে যোগ করুন ()
ইনপুটফিল্ড ব্যবহৃত টেক্সটফিল্ডের নাম।
self.inputField.delegate = self
এবং এই ফাংশন যোগ করুন
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
সুইফট 2:
প্রতিটি কাজ করার জন্য এটি করা হয়!
Done
বোতামের সাহায্যে কীবোর্ডটি বন্ধ করুন বা Touch outSide
, Next
পরবর্তী ইনপুটটিতে যেতে।
স্টোরিবোর্ডে Return Key
টেক্সট ফাইল করা প্রথম পরিবর্তন Next
।
override func viewDidLoad() {
txtBillIdentifier.delegate = self
txtBillIdentifier.tag = 1
txtPayIdentifier.delegate = self
txtPayIdentifier.tag = 2
let tap = UITapGestureRecognizer(target: self, action: "onTouchGesture")
self.view.addGestureRecognizer(tap)
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
if(textField.returnKeyType == UIReturnKeyType.Default) {
if let next = textField.superview?.viewWithTag(textField.tag+1) as? UITextField {
next.becomeFirstResponder()
return false
}
}
textField.resignFirstResponder()
return false
}
func onTouchGesture(){
self.view.endEditing(true)
}
দ্রুত আপনি ইউআইটিেক্সটফিল্ড ডেলিগেটের প্রতিনিধি হওয়া উচিত , এটির গুরুত্বপূর্ণ এটি ভুলে যাবেন না, ভিউকন্ট্রোলারে যেমন:
class MyViewController: UITextfieldDelegate{
mytextfield.delegate = self
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
}
}
আপনি ইউআইটিেক্সটফিল্ডে আইবিএশন যুক্ত করতে পারেন (রিলিজ ইভেন্টটি "শেষ হয়েছে প্রস্থান"), এবং আইবিএક્શન হাইডকি কীবোর্ডের নাম রাখতে পারে,
-(IBAction)hideKeyboard:(id)sender
{
[uitextfield resignFirstResponder];
}
এছাড়াও, আপনি এটি অন্য পাঠ্য ফিল্ডস বা বোতামগুলিতে প্রয়োগ করতে পারেন, উদাহরণস্বরূপ, আপনি কীবোর্ডটি আড়াল করতে ক্লিক করার সময় দৃশ্যে একটি লুকানো বোতাম যুক্ত করতে পারেন।
আপনি এই ইউআইটিেক্সটফিল্ড সাবক্লাসটি চেষ্টা করে দেখতে পারেন যা আপনি পাঠ্যের জন্য ইউআরআইটির্নকিকে পরিবর্তনশীলভাবে পরিবর্তন করতে একটি শর্ত সেট করতে পারেন:
https://github.com/codeinteractiveapps/OBReturnKeyTextField