【问题标题】:How to get a Text Field's text in XCode如何在 XCode 中获取文本字段的文本
【发布时间】:2012-06-18 15:33:51
【问题描述】:

我用界面生成器制作了一个文本字段。我怎样才能让它的文本在其他地方使用?

有没有类似的东西:

string text = myTextField.Text;

如果是这样,我该如何命名我的文本字段?

【问题讨论】:

  • 您是否创建了一个属性并将其与界面生成器连接起来,或者您是否需要相关建议?
  • 我需要一个建议 :) 我知道这是一个非常基本的问题,但我对基于视图的应用程序不熟悉。实际上是在尝试制作我的第一个基于视图的应用程序。

标签: objective-c ios xcode interface-builder uitextfield


【解决方案1】:

所以您要做的第一件事是在与您的 xib 文件关联的视图控制器文件的 .h 文件中创建一个属性,如下所示:

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

接下来在 .m 文件中你需要像这样合成它:

    @synthesize aLabel;

在你的实现标签内。

现在在界面生成器控件中单击 Xcode 4.3 屏幕左侧显示“文件所有者”的位置,按住并拖动标签并松开。然后在弹出窗口中选择您创建的属性的名称。现在在您的视图控制器的 viewDidLoad 方法中,您可以像这样获得您的价值:

   self.alabel.text

【讨论】:

  • 谢谢,但是当我定义属性时,它说:期望在“强”之前有一个属性属性
  • 顺便说一句,我使用的是:@property (strong, nonatomic) IBOutlet UITextField *aciklama;因为它是 TextField 而不是标签。可能不是那么重要,但我只是想说。
【解决方案2】:

正如 Greg Price 所说,要为您的文本字段命名,您必须创建一个 Outlet。 转到您的 ViewController.h 文件并为您的文本字段创建一个属性:

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

使用关键字IBOutlet,您说接口生成器有一个与此属性连接的出口。另一方面,您将使用关键字IBAction 将方法连接到对象。

不要忘记在你的实现下合成你的属性,然后编译器会为你创建一些标准的 setter 和 getter:

@synthesize myTextField;

然后转到界面生成器并右键单击File's Owner,然后将一条线从myTextField拖到视图上的TextField。

现在您可以访问代码中的 text 属性:

NSString *string = self.myTextField.text;

【讨论】:

    【解决方案3】:

    首先,您需要一个名为 myTextField 的 @property。

    之后,您可以获取文本字段myTextField.text 的文本。有关更多信息,请查看类参考 UITextField

    也许您想在用户输入时获取它。如果是这样你可以看看UITextFieldDelegate

    -

    编辑:如果您是客观的 c 学生,可以查看一个很酷的链接,您可以在以下位置了解更多信息:UITextFields examples

    最好的问候。

    【讨论】:

      【解决方案4】:

      它非常简单,只需将文本字段从视图区域拖到您的情节提要中。然后激活助手编辑器,以便您可以同时查看代码窗口和情节提要。 然后按下控制按钮并将文本字段从情节提要拖到代码窗口中。

      //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 Text Field Tutorial

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-17
        • 2021-10-06
        • 1970-01-01
        • 2011-08-02
        • 2012-12-05
        • 1970-01-01
        相关资源
        最近更新 更多