UIStoryboard 容器将 IBOutlet 附加到父 ViewController

2024-06-22

我想用一个UITableView其中包含静态单元格UITextField里面附有我的LoginViewController。我已经添加了IBOutlets在对应的头文件中UITextFields在故事板中。不幸的是 Xcode 不允许在 a 中包含静态内容UITableView你需要使用UITableViewController.

因此我把UITableView从故事板并使用ContainerView嵌入一​​个UITableViewController效果很好。附上设置的屏幕截图。

我现在面临的问题是我无法链接UITextFields to my LoginViewController,你可以从我的截图中看到我添加了一个Object to the UITableViewController我已将其设置为我的LoginViewController并设法链接UITextFields到它。但是当主视图加载时它会说我的UITextFields are nil

我怎样才能链接我的UITextFields to my IBOutlets in my LoginViewController?

编辑: 如果我必须子类化UITableViewController看来我应该只使用原型电池......还有其他建议吗?


1.) 将您的嵌入转场命名为“TextFields”

2.) 如果你还没有,子类化UITableViewController并将表视图控制器设置为故事板中的此类。我们就这样称呼它吧TextFieldsTableViewController.

3.) 再次,如果您还没有添加,请添加IBOutlets 将您的文本字段放入TextFieldsTableViewController的公共接口:

@property (weak, nonatomic) IBOutlet UITextField *firstNameField;
@property (weak, nonatomic) IBOutlet UITextField *usernameField;
@property (weak, nonatomic) IBOutlet UITextField *emailField;
@property (weak, nonatomic) IBOutlet UITextField *passwordField;

4.) 将文本字段的属性添加到LoginViewController的公共接口(请注意,与上面不同,这些并不弱(它们也不是IBOutlets,但这并不重要)):

@property (nonatomic) UITextField *firstNameField;
@property (nonatomic) UITextField *usernameField;
@property (nonatomic) UITextField *emailField;
@property (nonatomic) UITextField *passwordField;

5.) In LoginViewController's prepareForSegue:sender:方法,映射TextFieldsTableViewController的文本字段self强制立即加载表视图控制器的视图后的文本字段:

if ([segue.identifier isEqualToString:@"TextFields"]) {

    TextFieldsTableViewController *textFieldsVC = segue.destinationViewController;

    // IMPORTANT: This forces the view to load and the outlets to get set.
    // If you don't do this, textFieldsVC's IBOutlets will all be nil at this point.
    // This is slightly inelegant in my opinion, but it works. A better solution might
    // be to set the text fields in TextFieldsTableViewController's viewDidLoad method.
    [textFieldsVC view];

    self.firstNameField = textFieldsVC.firstNameField;
    self.usernameField = textFieldsVC.usernameField;
    self.emailField = textFieldsVC.emailField;
    self.passwordField = textFieldsVC.passwordField;
}

6.) 您现在应该能够访问中的文本字段LoginViewController's viewDidLoad method.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UIStoryboard 容器将 IBOutlet 附加到父 ViewController 的相关文章

  • 使用 contenteditable div 时隐藏移动设备上的软键盘

    我正在使用 contenteditable div 来创建由移动设备查看的页面 以获取某些内容的输入 我希望当用户按下 Enter 时隐藏软键盘 而不是在 div 中按 Enter 的正常操作 我第一次尝试让它工作看起来像这样 if eve
  • 我删除了 Xcode 中的本地化,然后无法添加任何本地化

    我错误地从项目信息中删除了项目的本地化信息 故事板和相关语言都被删除 我从以前的文件中取回了故事板 但是当我想添加新的本地化时 会弹出一个窗口并要求我 选择文件和参考语言来创建英语本地化 并且根本没有资源文件 如何添加回本地化内容 添加回本
  • IOS 向特定用户推送通知?

    是否可以向特定设备发送 iOS 推送通知 我构建了一个论坛类型的应用程序 用户可以创建问题 其他人可以回答它 我需要向提出问题的特定用户发送 iOS 推送通知 通知他们问题已得到解答 这可以通过 PHP 或其他方法来完成吗 是的 您绝对可以
  • 自定义 URL 方案

    如何处理自定义 URL 方案以允许一个应用程序定向到另一个应用程序 例如instagram user username someusername它通过用户名将用户直接引导至用户个人资料 我需要创建类似的东西 我已经结账了applicatio
  • Apple 实时照片文件格式

    苹果将 推出现场照片 http www apple com iphone 6s cameras 在 iOS 9 iPhone 6s 中 文件格式记录在哪里 实时照片有两个资源 它们与资产标识符 UUID 作为字符串 绑定在一起 JPEG 这
  • Swift PerformSegueWithIdentifier 不起作用

    我试图在用户成功登录其帐户后切换视图控制器 但它无法正常工作 我无法直接使用 segue 因为如果单击登录按钮 无论信息是否正确 它都会转到该视图控制器 我已经尝试了我所知道的一切 但没有成功 这是我正在尝试的代码 IBAction fun
  • 裁剪图像和中心

    在 Swift 中如何裁剪图像并将其放在中心 我已经裁剪了图像 但想将其放在中间 ImgView image OrigImage var masklayer CAShapeLayer masklayer frame ImgView fram
  • MobileSafari 的正确触摸按钮行为

    MobileSafari 通常具有不正确的 HTML 按钮行为 不正确的含义 不像 iOS 原生按钮 正确的按钮行为如下 用户触摸按钮 按钮突出显示 用户将手指拖出按钮 按钮变暗 用户将手指拖回按钮 按钮突出显示 用户将手指拖出按钮并释放
  • WGS84 iOS 上外部 GPS 数据的大地水准面高度高度偏移

    对于我正在编写的应用程序 我们将 IOS 设备与外部传感器连接起来 该传感器通过本地 WiFi 网络输出 GPS 数据 该数据以相对于海拔高度的 原始 格式出现 一般来说 所有 GPS 高度都需要应用与基于当前位置的 WGS84 大地水准面
  • 致命错误:在解包可选值时意外发现 nil (lldb)

    override func prepareForSegue segue UIStoryboardSegue sender AnyObject if segue identifier showLocalMenuDetail if let in
  • Facebook SDK:openActiveSessionWithPermissionscompletionHandler 未调用

    使用我已经实现的 Facebook 代码 BOOL openSessionWithAllowLoginUI BOOL allowLoginUI NSArray permissions NSArray alloc initWithObject
  • 钥匙串组访问权限可在我的现有应用程序之间共享数据

    我在 AppStore 上有很多 iOS 应用程序 现在 对于下一个版本的应用程序 我想为每个应用程序保留一段数据以在 KeyChain 中共享 据我所知 我需要在 Apple 的 KeychainItemWrapper 类中提供相同的 K
  • 从 UIImageView 的中心对 UIImageView 进行动画处理

    我有一个UIImageView应该从动画size 0 0 gt 93 75 我有以下内容 UIView animateWithDuration 0 5 delay 0 options UIViewAnimationOptionTransit
  • 如何使 TextField 右对齐(尾随)

    我正在努力拥有一个价值文本域以尾随对齐方式显示 正如你所看到的价值34 3以前导对齐方式显示 我确信我错过了一些明显的东西 但我不知道是什么 有任何想法吗 State private var endwert 34 3 var numberF
  • 使用文本编辑器避免在 SwiftUI 中使用键盘

    我正在尝试重新创建 iOS 笔记应用程序的简单版本 请注意 我是一个十足的 Swift 新手 我当前的问题是我希望我的视图在键盘出现时向上移动 我已经实现了一些代码does这样做 但它有一些讨厌的错误 它首先将视图移动得太高 然后当您开始打
  • 如何在 React Native 应用程序中的 iOS 后台运行 socket.io?

    我在用socket io in an iOS React Native v0 20 app 该应用程序会跟踪我的位置 当我的位置发生变化时 它会向服务器发送一条消息 如果套接字连接丢失 服务器会发送电子邮件通知我 我在后台进行位置跟踪反应本
  • 将渐变应用于 UIImage - 如何消除颜色反转?

    我正在应用渐变UIImage 我希望它底部是黑色的 中间慢慢变成透明或浅灰色 基本上没问题 但我有一个问题 在这个渐变下 我的图像颜色在某些地方反转 这看起来很烦人 我该如何解决这个问题 为了您方便 我的方法如下 我尝试过选择不同的混合模式
  • 更改 UIDocumentInteractionController 图标

    我想知道如何更改表视图中显示的图标 我查看了文档UIDocumentInteractionController on 苹果网站但我没有成功编辑我的 plist 如果有人知道如何执行此操作 请提供帮助 Thank you 注册您的应用程序支持
  • iOS APNS:以字符串格式将设备令牌发送给提供商

    我需要通过调用在我的请求中需要 JSON 数据的服务 将 iOS 应用程序的 APNS 设备令牌发送给我的提供商 我正在阅读苹果的本地和推送通知编程指南 https developer apple com library ios docum
  • UpdatedTransactions(transactionState == .restored) 与 paymentQueueRestoreCompletedTransactionsFinished

    正如标题所描述的 实际有什么不同 如果我有这个 func paymentQueue queue SKPaymentQueue updatedTransactions transactions SKPaymentTransaction for

随机推荐