我有一个包含多个文本字段的类。这些文本中的两个允许用户输入密码和密码确认。
@property (nonatomic, strong) UITextfield *password;
@property (nonatomic, strong) UITextfield *passwordConfirmation;
我现在创建了一个新类,可以处理显示您的密码强度。该类包含2个属性密码和密码确认(以及处理密码检查并显示强度的其他代码)。
@interface PasswordChangeView : UIView
@property (nonatomic, strong) IBOutlet UITextfield *password;
@property (nonatomic, strong) IBOutlet UITextfield *passwordConfirmation;
在第一类中,我创建了passwordChangeView的属性,并将两个属性设置为原始属性。
@property (nonatomic weak) IBOutlet PasswordChangeView *passwordChangeView;
self.password = self.passwordChangeView.password;
self.passwordConfirmation = self.passwordChangeView.passwordConfirmation;
我已经检查了调试器,指针是相同的。
但是,当我输入文本:self.pass.passwordchangeview.password时,self.password中的文本保持不变。
我会想到,因为它们都指向同一对象,因此在一个Uitextfield中更改文本会更新另一个对象。
如果问题还不够清楚,请告诉我,我将立即编辑。任何帮助都非常感谢。
非常感谢。
因为指针是相同的,所以它们现在都指向同一件事。如果设置*b = *a
,则更改*b
的文本只会导致*a
的出口进行更新。
您需要同时设置两个文本,而不会更改指针。
事实证明,我在代码其他地方遇到问题,这使得文本似乎没有被更新。
我可以通过更改:
的文本来确认这一点 self.passwordChangeView.password;
或
self.passwordChangeView.passwordConfirmation;
确实正在更改指向这些指向的其他两个文本字段的文本。