iPad - UITextView и UITextField - не показывает текст - PullRequest
0 голосов
/ 03 марта 2011

У меня UITextField и UITextView в одном и том же виде, но у меня проблемы с их редактируемостью, особенно при переходе от одного к другому.

Если я коснусь поля UITextField, я смогу ввести его. Но если я затем наберу в UITextView, то он не захватывает то, что я печатаю. И то же самое происходит наоборот.

Есть идеи, почему он так себя ведет?

review = [[UITextView alloc] initWithFrame:CGRectMake(x+10, y + 40, 470-5, h - 15)];
review.keyboardType = UIKeyboardTypeAlphabet;
review.delegate = self;
review.font = [UIFont systemFontOfSize:16];
[scrollView addSubview:review];

и

titleField = [[UITextField alloc] initWithFrame:CGRectMake(x+10, y + 30, 472, 32)];
titleField.keyboardType = UIKeyboardTypeAlphabet;
titleField.clearButtonMode = UITextFieldViewModeWhileEditing;
titleField.delegate = self;
titleField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
titleField.font = [UIFont systemFontOfSize:14];
[scrollView addSubview:titleField];

Обе они являются глобальными переменными, и их размеры достаточно велики.


Так что я понял это, но я не уверен, почему это так.

Объекты были выпущены так, что мои указатели больше не были точными?

Мой .h остался прежним:

{ 
    UITextField *titleField;
    UITextView *review;
}
@property (nonatomic, retain) UITextField *titleField;
@property (nonatomic, retain) UITextView *review;

И я изменил оба, чтобы быть таким:

UITextField *titleField1 = [[UITextField alloc] initWithFrame:CGRectMake(x+10, y + 30, 472, 32)];
titleField1.keyboardType = UIKeyboardTypeAlphabet;
titleField1.clearButtonMode = UITextFieldViewModeWhileEditing;
titleField1.delegate = self;
titleField1.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
titleField1.font = [UIFont systemFontOfSize:14];
[scrollView addSubview:titleField1];

titleField = [titleField1 retain];

Но разве это не оставляет объект зависшим даже после того, как я выпустил titleField?

1 Ответ

0 голосов
/ 11 августа 2014

Вы не должны использовать оба

{ 
UITextField *titleField;
UITextView *review;
}
@property (nonatomic, retain) UITextField *titleField;
@property (nonatomic, retain) UITextView *review;

USE:

@property (nonatomic, retain) IBOutlet UITextField *titleField;
@property (nonatomic, retain) IBOutlet UITextView *review;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...