2013-11-08 4 views
0
-(void)histWordPushed:(NSString*)histword{ 
    self.word=histword; 
    [self.searchWord setText:self.word]; 
    NSLog(@"search word %@",self.searchWord.text); 
    NSLog(@"word %@",self.word); 
} 

В этом коде self.searchWord.text имеет значение null, но self.word нет. Как установить текст поискаWord (UITextField)? Благодарю.Невозможно изменить текст UITextField

+0

Попробуйте использовать [self.searchWord setText: histword]; вместо [self.searchWord setText: self.word]; – Neha

+0

Вы создаете UITextField программно или через раскадровки? Если вы используете раскадровки, связали ли вы свое свойство с элементом управления в раскадровке (IBOutlet)? – user1567896

+0

Вы можете проверить 1). Правильные выходные 2). TextColor 3). Размер шрифта –

ответ

0

Это сработало. Я добавляю этот код ниже setText:

self.searchWord = [ [ UITextField alloc ] init ]; 
+0

Это означает, что вы создаете новый UITextField. Итак, что случилось с текстовым полем, созданным с помощью раскадровки? – HRM

+0

Да, я удаляю из раскадровки и создавал ее программно. Затем я снова изменил код. Поскольку я понял, что значение слова изменилось, но я должен установить все свойства UITextField, чтобы он появился. Это не эффективно. Поэтому я просто удаляю settext из histWordPushed и ставил метод searchWord.text в viewDidAppear. Должен ли я изменить свой ответ снова, оба из них работают? –

Смежные вопросы