UITableView部分绘图不正确/ EXC_Bad_Access当滚动屏幕
问题描述:
所以我不明白为什么这个非常简单的UITableView部分绘图不正确,其次当我试图从屏幕上滚动这个吸盘它会引发随机错误,有时bad_access和其他如此突出的绿色错误。UITableView部分绘图不正确/ EXC_Bad_Access当滚动屏幕
这是设备上发生了什么的图片,下面是我在appDelegate中首先使用的代码创建tableview单元格的代码。由于
在的appDelegate
SignUp *signup = [[SignUp alloc] initWithNibName:@"SignUp" bundle:nil];
signup.view.frame = self.window.frame;
[self.window addSubview:signup.view];
[self.window makeKeyAndVisible];
要创建的TableView
static NSString *CellIdentifier = @"EditableCell";
EditableCell *editableCell = (EditableCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (editableCell == nil) {
editableCell = [[EditableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
UITextField *cellTextField = [editableCell textFieldCell];
cellTextField.keyboardType = UIKeyboardTypeDefault;
cellTextField.delegate = self;
return editableCell;
的错误:
答
你创建你的视图控制器,但从来没有举行到它上面与任何东西。只要您的didFinishLaunchingWithOptions方法退出,您将失去视图控制器并遇到内存问题。保持视图控制器视图不保留在视图控制器上。除了直接添加视图到窗口使用的:
self.window.rootViewController = signup;
这都将采取视图的所有权,并应设置它的框架,使您不必手动进行。您当前将框架设置为窗口的同一框架,并将其放在状态栏下方。
你,先生,是一个真正的朋友。非常感谢。不过,如果您不介意,我还有其他一个问题:此视图旨在为应用程序临时注册/登录视图。一旦这个人注册,我想关闭这个视图,并在不同的导航控制器中显示我的下一个视图堆栈。我会在哪里添加代码来做到这一点?它会在SignUp中引用appDelegate吗?再次,非常感谢。 – Apollo
没问题。如果这个视图只是暂时的,我个人的偏好是将您的根视图控制器设置为您提到的永久导航堆栈,然后以模态方式呈现注册视图控制器。然后,当用户完成时,他们会获得一个很好的动画,从屏幕底部滑出来揭示应用程序。 – sc0rp10n
是的,这是有道理的。好吧,你一直很有帮助,再次感谢! – Apollo