使用2个或更多

时间:2015-11-18 13:52:11

标签: ios objective-c

我不知道这是一个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并且应用程序不会冻结。有人可以帮我理解导致这个奇怪问题的原因吗?

1 个答案:

答案 0 :(得分:2)

UIView的一个实例无法用作多个UITextFields的右视图。您必须制作UIImageView的两个实例才能使您的应用按预期工作。当你自己发现时,一个视图不能同时多次显示在屏幕上。

相关问题