【问题标题】:UITextField text not changing on the UIUITextField 文本在 UI 上没有改变
【发布时间】:2012-01-24 00:59:12
【问题描述】:

执行下面的代码后,文本字段的文本在 UI 中不会更改为“Fly”,但第二个 NSLog 会按应有的方式打印“TextField: Fly”。

@property (strong, nonatomic) IBOutlet UITextField *typeTextField;
....

UITableViewCell* cell = [self.theTableView dequeueReusableCellWithIdentifier:@"TypeCell"];
self.typeTextField = (UITextField*)[cell viewWithTag:1];
NSLog(@"TextField: %@ ", self.typeTextField.text);
self.typeTextField.text = @"Fly";
NSLog(@"TextField: %@ ", self.typeTextField.text);

任何帮助将不胜感激。

【问题讨论】:

    标签: uitextfield


    【解决方案1】:

    您几乎肯定忘记在界面生成器中连接 UITextField 的插座。调出typeTextField 可见的.xib 文件,单击typeTextField,然后显示实用程序窗格(Xcode 4+ 中最右侧的那个)。单击 Connections Inspector(看起来像右箭头的那个)并将一个新的引用出口拖到您的文件所有者。

    当您没有将您在 Interface Builder 中绘制的 UITextField 与您在源文件中标识的 IBOutlet 连接起来时,两个 UITextField 都会被创建为单独的实体。您可以使用损坏的 IBOutlet 进行更改和使用有效的 typeTextField,但它永远不会出现在您的视图中。

    请咨询 How to connect an IBOutlet from an UITableViewController directly to custom cell?http://www.youtube.com/watch?v=d_kO-J3DYvc,了解如何正确连接您的自定义 UITableViewCell 对象。

    【讨论】:

    • 嗯……这就是我最初所做的,但我得到了下面的错误……所以我认为指向它就足够了……显然不要过多地关注 XCode。 “无法编译连接:<0x40183b0a0><0x4018168a0>
    猜你喜欢
    • 2016-03-24
    • 2017-12-09
    • 2018-07-27
    • 1970-01-01
    • 2010-11-19
    • 2012-07-16
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多