Я создал текстовое поле с построителем интерфейса. Как я могу получить его текст для использования где-то еще?
Есть ли что-то вроде:
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