【发布时间】:2020-02-09 19:02:24
【问题描述】:
希望这将是一个简单的修复!
我正在使用 .m 文件中的以下代码向我的应用添加 UITextField:
editTextField = [[UITextField alloc] init];
editTextField.frame = CGRectMake(0, [self getTopOfTabBar] - 30, practiceScreenWidth, 30);
editTextField.delegate = self;
editTextField.backgroundColor = [UIColor blueColor];
[self.view addSubview:editTextField];
但是,每当我单击此 UITextField 时,应用程序就会冻结。日志中没有产生任何错误或错误,应用程序只是停止响应。
一些额外的信息,这里是.h文件中的接口
@interface PracticeViewController : UIViewController <UITextFieldDelegate>
感谢任何帮助!
【问题讨论】:
-
你实现过
UITextfieldDelegate的功能吗? -
到目前为止,没有。仅添加了
注释。 -
如果确认冻结,我认为某处发生了无限循环。你是否覆盖了
viewWillLayoutSubviews? -
您能否展示视图的实现、结构的层次结构,考虑到您没有添加任何
UITextfieldDelegate's函数,原因可能是视图中的布局或渲染跨度> -
我刚才实现了对viewWillLayoutSubviews的覆盖,无论是否调用super方法,但应用程序仍然冻结。我放置在函数中的 NSLog 也似乎只在加载 ViewController 时被调用一次,并且在我单击 UITextField 时根本不会被调用,它在我单击它后继续冻结应用程序。真是个奇怪的案例!
标签: ios objective-c xcode uitextfield freeze