Я создал текстовое поле с построителем интерфейса. Как я могу получить его текст для использования где-то еще?
Есть ли что-то вроде:
string text = myTextField.Text;
Если да, как я могу назвать свое текстовое поле?
Я создал текстовое поле с построителем интерфейса. Как я могу получить его текст для использования где-то еще?
Есть ли что-то вроде:
string text = myTextField.Text;
Если да, как я могу назвать свое текстовое поле?
Итак, первое, что вы хотите сделать, это создать свойство в файле .h файлов файлов контроллера, связанных с вашим xib файлом, например:
@property (strong, nonatomic) IBOutlet UILabel *aLabel;
Далее в файле .m вам нужно синтезировать его так:
@synthesize aLabel;
Внутри вашего тега реализации.
Теперь в элементе управления построителем интерфейса щелкните, где он говорит "Владелец файла" в левой части экрана в Xcode 4.3, удерживая нажатой клавишу и перетащите ярлык и отпустите. Затем во всплывающем меню выберите имя созданного вами свойства. Теперь в методе viewDidLoad вашего контроллера просмотра вы можете получить свое значение следующим образом:
self.alabel.text
Как упоминал Грег Прайс, чтобы получить имя для вашего текстового поля, вам нужно создать выход. перейдите в файл ViewController.h и создайте свойство для своего текстового поля:
@interface YourViewController: UIViewController
@property (nonatomic, retain) IBOutlet UITextField myTextField
@end
С ключевым словом IBOutlet вы говорите, что построитель интерфейсов имеет выход для подключения к этому свойству. С другой стороны, вы будете использовать ключевое слово IBAction для подключения методов к объектам.
Не забудьте синтезировать свое свойство прямо под вашей реализацией, тогда компилятор создаст вам стандартный наборщик и getter:
@synthesize myTextField;
Затем перейдите к построителю интерфейса и щелкните правой кнопкой мыши по File Owner, затем перетащите строку из myTextField в TextField в представлении.
Теперь вы можете получить доступ к текстовому свойству в своем коде:
NSString *string = self.myTextField.text;
Сначала вам понадобится @property, называемый myTextField.
После этого вы можете получить текст текстового поля myTextField.text. Для получения дополнительной информации взгляните на ссылку класса UITextField
Возможно, вы хотите получить его, пока пользователь печатает. Если это так, вы можете взглянуть на UITextFieldDelegate
-
Edit: классная ссылка, чтобы взглянуть, если вы являетесь объективным учеником c, вы можете узнать больше: Примеры UITextFields
С наилучшими пожеланиями.
Существует также хорошее приложение для Apple, которое охватывает одно и то же, а также пару других начинающих тем iOS: Ваше первое приложение для iOS
Его довольно просто перетащите текстовое поле из области просмотра в свою раскадровку. Затем активируйте редактор помощника, чтобы одновременно просматривать как окно кода, так и раскадровку. Затем нажмите кнопку управления и перетащите текстовое поле из раскадровки в окно кода, и вот оно.
//created a string variable
var name: String = ""
//our label to display input
@IBOutlet weak var labelName: UILabel!
//this is the text field we created
@IBOutlet weak var textFieldName: UITextField!
@IBAction func buttonClick(sender: UIButton) {
//getting input from Text Field
name = textFieldName.text!
}
Источник: Учебное поле для текстового поля Xcode