it-swarm.com.ru

Как получить текстовое поле текста в XCode

Я сделал текстовое поле с помощью конструктора интерфейса. Как я могу получить его текст для использования в другом месте?

Есть ли что-то вроде:

string text = myTextField.Text;

Если так, как я могу назвать свое текстовое поле?

13
Yetik

Поэтому первое, что вы хотите сделать, это создать свойство в файле .h файлов контроллера представления, связанных с вашим файлом xib, например:

    @property (strong, nonatomic) IBOutlet UILabel *aLabel;

Далее в файле .m вам нужно его синтезировать примерно так:

    @synthesize aLabel;

Внутри вас тег реализации.

Теперь в контроллере конструктора интерфейсов щелкните мышью там, где написано «Владелец файла» в левой части экрана в Xcode 4.3, и удерживайте его, перетащите на метку и отпустите. Затем во всплывающем окне выберите имя созданного вами свойства. Теперь в методе viewDidLoad вашего контроллера представления вы можете получить ваше значение следующим образом:

   self.alabel.text
14
Greg Price

Как упоминал Грег Прайс, чтобы получить имя для вашего текстового поля, вы должны создать Outlet . Перейдите в ваш файл ViewController.h и создайте свойство для вашего текстового поля:

@interface YourViewController: UIViewController
@property (nonatomic, retain) IBOutlet UITextField myTextField
@end

С ключевым словом IBOutlet вы говорите Интерфейсному Разработчику, что есть выход для соединения с этим свойством. С другой стороны, вы будете использовать ключевое слово IBAction для соединения методов с объектами.

Не забудьте синтезировать ваше свойство прямо под вашей реализацией, тогда компилятор создаст вам какой-то стандартный установщик и получатель:

@synthesize myTextField;

Затем перейдите к построителю интерфейса и щелкните правой кнопкой мыши на File's Owner, затем перетащите линию из myTextField в TextField в представлении.

Теперь вы можете получить доступ к свойству text в вашем коде:

NSString *string = self.myTextField.text;
8
Herm

Сначала вам понадобится @property с именем myTextField.

После этого вы можете получить текст текстового поля myTextField.text. Для получения дополнительной информации взгляните на ссылку на класс UITextField

Может быть, вы хотите получить его, пока пользователь печатает. Если это так, вы можете взглянуть на UITextFieldDelegate

-

Правка: классная ссылка, чтобы посмотреть, если вы студент Objective C, вы можете узнать больше на: Примеры UITextFields

С уважением.

3
ggrana

Существует также хорошее руководство Apple, которое охватывает то же самое, а также пару других тем для начинающих iOS: Ваше первое приложение для iOS

1
CBredlow

Это довольно просто, просто перетащите текстовое поле из области просмотра на раскадровку. Затем активируйте помощник редактора, чтобы вы могли одновременно просматривать окно кода и раскадровку. Затем нажмите кнопку управления и перетащите текстовое поле из раскадровки в окно кода, и все.

//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

0
Reyaan Roy