Iphone UITextFields不工作

Iphone UITextFields不工作,iphone,objective-c,ios5,uitextfield,Iphone,Objective C,Ios5,Uitextfield,我正在创建一个注册视图,其中包含14个UITextFields。它们都被设置为userInteractionEnabled,委托被设置为“文件的所有者”。触摸前8个文本字段时将启用。但是,以下6项不会对触摸做出响应。我基本上只是想看看是否有其他iOS开发者遇到过类似的问题。在视图控制器中,我只有在按下“提交”按钮时使用正则表达式验证电子邮件字段的代码。以及设置滚动视图的内容大小的代码。我将在下面发布整个.m #import "RegistrationViewController.h" @imp

我正在创建一个注册视图,其中包含14个
UITextFields
。它们都被设置为
userInteractionEnabled
,委托被设置为“文件的所有者”。触摸前8个文本字段时将启用。但是,以下6项不会对触摸做出响应。我基本上只是想看看是否有其他iOS开发者遇到过类似的问题。在视图控制器中,我只有在按下“提交”按钮时使用正则表达式验证电子邮件字段的代码。以及设置
滚动视图
内容大小
的代码。我将在下面发布整个
.m

#import "RegistrationViewController.h"

@implementation RegistrationViewController

@synthesize scrollView, txtFirstName, txtLastName, txtAge, txtGender, txtAddress1, txtAddress2, txtCity, txtState, txtCountry, txtPostal, txtEmail, txtPhone, txtAccount, txtCgAcct;

- (void)didReceiveMemoryWarning
{
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];

// Release any cached data, images, etc that aren't in use.
}

#pragma mark - View lifecycle


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad
{
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = YES;
scrollView.scrollsToTop = YES;
scrollView.contentSize = CGSizeMake(320, 1044);

[super viewDidLoad];
}

-(void) validateData {

NSString *regEmail = txtEmail.text;
NSError *error = NULL;

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b" options:0 error:&error];
NSTextCheckingResult *match = [regex firstMatchInString:regEmail options:0 range:NSMakeRange(0, [regEmail length])];

}

-(void) postRegData {



}

-(IBAction)submitReg:(id)sender{
[self validateData];
}

- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}

- (BOOL)shouldAutorotateToInterfaceOrientation:   (UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

@end

找到了解决方案-但有点像一个bug-您可以删除scrollview下的视图,并在scrollview中保留所有元素,然后所有元素都可以正常工作。主要问题是w.r.t heirarchy-scrollview=>view=>textview,视图的高度不可更改,因此无法选择任何超出视图范围的内容的问题-u可以通过设置该视图的背景色来检查这一点


如果您需要视图的属性或具有相同的继承人属性,则首先创建主视图,然后滚动该主视图大小的视图和相同大小的子视图,然后处理它们(您可以增加视图高度,在下面添加文本字段,然后将大小恢复为正常值-460)

您是否有一个视图错误地位于底部6的顶部,可能正在拦截触摸事件?没有,先生。层次结构如下所示:ScrollView(最顶层)->View->Object(标签、文本字段、文本视图、按钮)。风景上没有别的东西了。16个标签,14个文本字段,2个文本视图,2个按钮。奇怪吧。如果它们都是相同的设置,你没有理由看到它。你可以发布一个链接来下载XIB和VC.h/.m吗?如果文本字段本身不在其父字段的框架内,我就看到了这种情况。尝试将scrollview背景颜色更改为明显的颜色,然后查看文本字段是否实际在框架内。正确链接到我的github repo:你已经保存了我的白天和黑夜。哦,终于。我在这里花了太多时间来调试这个。由于我对约束、ios编程一无所知,我一直在努力寻找解决方案。我正要问一个新问题,我发现了这个问题。谢谢