-[NSConcreteMutableAttributedString _UIKBStringWideAttributeValueForKey:]: сообщение отправлено освобожденному экземпляру 0x11ba0740
У меня есть приложение, в котором происходит сбой приложения при нажатии на текстовое поле в iOS6. Происходит сбой, говоря ниже сообщение.
-[NSConcreteMutableAttributedString _UIKBStringWideAttributeValueForKey:]: message sent to deallocated instance 0x11ba0740
У меня есть приложение с английской и арабской версией. Для арабского я использую NSMutableAttributedString
и установить текст как textField.attributedText
Работает нормально с iOS 7. Проблема только с iOS 6.
1 ответ
Решение
Не уверен, в чем проблема, но ниже, как я решил.
в viewDidLoad
Я добавил ниже.
[fullName addTarget:self action:@selector(handleTouchValueChangedUN) forControlEvents: UIControlEventEditingDidEnd];
Потом использовал handleTouchValueChangedUN
как ниже.
-(void) handleTouchValueChangedUN {
[User_FullName setString:fullName.text];
}
добавленной textFieldShouldBeginEditing
где я устанавливаю текст как пустой, а затем устанавливаю его значение на его фактическое значение.
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
textField.text = @"";
if (textField==fullName) {
attributedString = [[NSMutableAttributedString alloc] initWithString:User_FullName attributes:@{ NSFontAttributeName : [UIFont fontWithName:localize(@"myFontName") size:[localize(@"fontSize001") floatValue]], NSLigatureAttributeName: @2}];
textField.attributedText = attributedString;
}
return YES;
}
Однако меня это больше беспокоит, так как раньше такого не случалось со мной. Это первый раз, когда я испытываю.