iOS:为什么[self.view setUserInteractionEnabled:NO]正在更改我的类地址?
我在类中使用该属性:iOS:为什么[self.view setUserInteractionEnabled:NO]正在更改我的类地址?,ios,objective-c,pointers,uiviewcontroller,setuserinteractionenabled,Ios,Objective C,Pointers,Uiviewcontroller,Setuserinteractionenabled,我在类中使用该属性: @property (nonatomic, strong) NameOfMyClass* form; 当我在我的系统中使用该代码时 主要功能: form=formToSend //CHECK MANDATORIES BOOL validMandatories = (0 != [self checkMandatoryFieldsWithForm:form withTableView:self.tableView withForm:self.formController]);
@property (nonatomic, strong) NameOfMyClass* form;
当我在我的系统中使用该代码时
主要功能:
form=formToSend
//CHECK MANDATORIES
BOOL validMandatories = (0 != [self checkMandatoryFieldsWithForm:form withTableView:self.tableView withForm:self.formController]);
if (validMandatories)
{
[self submitRegistrationForm];
}
以及子函数中的代码:
- (void)submitRegistrationForm
{
[self.view setUserInteractionEnabled:NO];=> change the form address
....
}
它更改窗体类的地址。
在[self.view setUserInteractionEnabled:否]之前
Printing description of self->form:
<RegistrationForm_Renault_Control_Adagio: 0x7f81bf8a0200>
Printing description of self->form:
<RegistrationForm_Renault_Control_Adagio: 0x7f81c092b600>
有什么解释吗?看起来你有未定义的行为。尝试运行产品->分析。检查地址消毒器和未定义的行为消毒器选项。它肯定不是您的
setUserInteractionEnabled
code。请给我们显示三行:打印地址、setUserInteraction、再次打印地址
NameOfMyClass* formTemp = form;
[self.view setUserInteractionEnabled:NO];
form = formTemp;