我不知道这是一个bug还是什么,但我无法理解为什么会这样。
我有2 UITextField
点击后向用户显示UIPickerView
,一切正常,直到我尝试添加自定义箭头图片,以便让用户知道下拉列表。这是我用来创建rightView的代码:
UIImageView *arrowDown = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"p-dropdown"]];
arrowDown.frame = CGRectMake(0, 0, 26, 22);
_province.rightViewMode = UITextFieldViewModeAlways;
_province.rightView = arrowDown;
_address.rightViewMode = UITextFieldViewModeAlways;
_address.rightView = arrowDown;
一旦最后一行结束,应用程序冻结并开始使用类似20MB / s的RAM而不停止,我试图评论上面的所有代码并且问题没有发生,有趣的是,如果我发表评论只是两个rightView中的一个,所以像这样:
UIImageView *arrowDown = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"p-dropdown"]];
arrowDown.frame = CGRectMake(0, 0, 26, 22);
_province.rightViewMode = UITextFieldViewModeAlways;
_province.rightView = arrowDown;
我可以正确地看到rightView并且应用程序不会冻结。有人可以帮我理解导致这个奇怪问题的原因吗?
答案 0 :(得分:2)
UIView
的一个实例无法用作多个UITextFields
的右视图。您必须制作UIImageView
的两个实例才能使您的应用按预期工作。当你自己发现时,一个视图不能同时多次显示在屏幕上。