gpt4 book ai didi

IOS - 如果用户点击随机元素而不是背景,如何隐藏键盘?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:09:26 25 4
gpt4 key购买 nike

在我的应用程序中,我有这样的东西:

- (IBAction)backgroundTouch:(id)sender 
{
[businessDescription resignFirstResponder];
[self.view endEditing:YES];
}

我不确定我使用的两行中哪一行更好,所以我都使用了:)当文本区域突出显示并且用户按下背景时它起作用。

但用户并不总是按下背景,有时会按下其他页面元素,例如他们试图填写的下一个元素。

在我的屏幕截图中,文本区域下方有下一个元素,当我单击那里时,键盘不会隐藏。谁能帮我在用户点击各种页面元素时隐藏键盘,而当文本区域恰好没有突出显示时?

enter image description here

这是我的 .h 文件:

@interface PlanBusinessController : UIViewController

@property (weak, nonatomic) IBOutlet UITextView *businessDescription;

- (IBAction)submitBusiness:(id)sender;
@property (weak, nonatomic) IBOutlet UIButton *buttonProperty;

@property (weak, nonatomic) IBOutlet UITextField *personName;

@property (weak, nonatomic) IBOutlet UITextField *personEmail;

@property (weak, nonatomic)
IBOutlet UISwitch *privacy;

@property (weak, nonatomic) IBOutlet UISwitch *wantHelp;

- (IBAction)helpToggle:(id)sender;

@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
@property (weak, nonatomic) IBOutlet UILabel *emailLabel;

@property (weak, nonatomic) IBOutlet
UIButton *test;

@结束

这是我的 .m 声明:

#import "PlanBusinessController.h"

@interface PlanBusinessController ()

@end

@implementation PlanBusinessController
@synthesize nameLabel;
@synthesize emailLabel;
@synthesize businessDescription;
@synthesize buttonProperty;
@synthesize personName;
@synthesize personEmail;
@synthesize privacy;
@synthesize wantHelp;
@synthesize test;


-(void)touchesBegan:(NSSet*)touches
{
UITouch *touch=[touches anyObject];
UIView *view=touch.view;
if (![view isEqual:businessDescription])
{
//[businessDescription resignFirstReponder];
}
}

- (IBAction)backgroundTouch:(id)sender
{
[businessDescription resignFirstResponder];
[self.view endEditing:YES];
}

谢谢!

最佳答案

我在我的程序 ViewController 中使用了这个方法,它工作正常。我会试一试。

//Used with the text fields to dismiss keyboard
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
[textField resignFirstResponder];
}

如果您有其他元素,则在这些元素的方法中还要添加 [textField resignFirstResponder]

例如,如果他们可以点击一个按钮,就写这样的东西:

-(IBAction)button1:(id)sender
{
[textField resignFirstResponder];

//Do stuff
}

注意:每个要关闭的文本字段都需要一个。例如:

-(IBAction)button1:(id)sender
{
[textField resignFirstResponder];
[textField2 resignFirstResponder];
[]... etc

//Do stuff
}

关于IOS - 如果用户点击随机元素而不是背景,如何隐藏键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11656035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com