Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何创建一个检测所有击键的方法?_Objective C_Ios - Fatal编程技术网

Objective c 如何创建一个检测所有击键的方法?

Objective c 如何创建一个检测所有击键的方法?,objective-c,ios,Objective C,Ios,我是一个初学者,所以请容忍我。。。在我使用xcode和objective c的应用程序中,我希望能够检测何时按下键盘上的任何键。我已经查找并找到了一些只检测某些键的代码,但我想提出一种方法来检测从esc到enter的任何按键笔划。理想情况下,每当按下任何键时,我都会运行一系列if语句 //if a keystroke is detected run through this if statement if([firstName.text length] < 1){ [firstName

我是一个初学者,所以请容忍我。。。在我使用xcode和objective c的应用程序中,我希望能够检测何时按下键盘上的任何键。我已经查找并找到了一些只检测某些键的代码,但我想提出一种方法来检测从esc到enter的任何按键笔划。理想情况下,每当按下任何键时,我都会运行一系列if语句

//if a keystroke is detected run through this if statement

if([firstName.text length] < 1){

[firstNameLabel setHidden:NO];
 } else {
 [firstNameLabel setHidden:YES]; 
 }
 if([secondName.text length] < 1){

 [secondNameLabel setHidden:NO]; 
 } else {
 [secondNameLabel setHidden:YES]; 
 }
 if([email.text length] < 1){

 [emailLabel setHidden:NO]; 
 } else {
 [emailLabel setHidden:YES]; 
 }
 if([password.text length] < 1){

 [passwordLabel setHidden:NO]; 
 } else {
 [passwordLabel setHidden:YES]; 
 }
 if([passwordSame.text length] < 1){

 [passwordSameLabel setHidden:NO]; 
 } else {
 [passwordSameLabel setHidden:YES]; 
 }
 if([schoolName.text length] < 1){

 [schoolNameLabel setHidden:NO]; 
 } else {
 [schoolNameLabel setHidden:YES]; 
 }
 if([gradeLevel.text length] < 1){

 [gradeLevelLabel setHidden:NO]; 
 } else {
 [gradeLevelLabel setHidden:YES]; 
 }
//如果检测到击键,请运行此if语句
如果([firstName.text length]<1){
[firstNameLabel setHidden:否];
}否则{
[firstNameLabel setHidden:是];
}
如果([secondName.text length]<1){
[secondNameLabel setHidden:否];
}否则{
[secondNameLabel setHidden:是];
}
如果([email.text长度]<1){
[emailLabel setHidden:否];
}否则{
[emailLabel setHidden:是];
}
如果([password.text length]<1){
[密码标签设置隐藏:否];
}否则{
[密码标签设置隐藏:是];
}
if([passwordSame.text length]<1){
[密码Samelabel setHidden:否];
}否则{
[密码Samelabel setHidden:是];
}
如果([schoolName.text length]<1){
[学校名称标签设置隐藏:否];
}否则{
[学校名称标签设置隐藏:是];
}
如果([gradeLevel.text length]<1){
[gradeLevelLabel setHidden:否];
}否则{
[gradeLevelLabel setHidden:是];
}

有人知道你将如何编写这个方法吗

您应该使用textField:shouldChangeCharactersRange:replacementString:delegate方法。您可以使用您的逻辑在那里检测击键。

此编辑是否可以在文本字段中进行?或者你是在寻找更多的热键或键盘快捷键设置?我希望在文本框中写下一些东西后,会出现一个图像。理想情况下,它将在键入第一个字符后发生。