Xcode 11.4 不允许使用实例变量

Xcode 11.4 not allowing to use instance variable

我有 Just In time 属性,它工作正常但现在 xcode 11.4 开始抱怨它。请看下面的代码

- (UITextField *)searchTextField
{
    if (!_searchTextField)
    {
        _searchTextField = [self firstSubViewOfKindOfClass:[UITextField class]];
    }
    return _searchTextField;
}

错误:使用了未声明的标识符“_searchTextField”

我为它定义了一个 属性,如下所示

@property (nonatomic, strong) UITextField  *searchTextField;

你有一个名字冲突。你不能定义一个searchTextField因为已经一个searchTextField(在iOS 13):

https://developer.apple.com/documentation/uikit/uisearchbar/3175433-searchtextfield

所以您可以删除您的代码,因为 iOS 13 不需要它。或者如果您需要支持 iOS 12 和更早版本,您可以提供 属性 不冲突的不同名称。