2016-02-26 63 views
1

我目前工作的一个iPad应用程序与下列环境时:的XCode:在Interface Builder文件未知类使用静态库

  • 的XCode 7
  • 的iOS 9.2
  • 斯威夫特2
  • 故事板
  • 列表项

我的项目包含一个静态库(myLib.a)由其他人创建。这个库包含了一堆类,并且已经用Objective-C编写。 我已经在我的Swift项目中导入了lib(myLib.a)以及所有头文件(.h文件)。

该库包含一个类,它是UITextField的一个子类,名为CustomUITextField。我的项目包含文件CustomUITextField.h。该类将特定布局应用于UITextField。

该库还包含一个名为LoginViewController的UIViewController。我的项目包含文件LoginViewController.h。

在我的故事板中,我设计了一个UIViewController并将该类更改为LoginViewController。然后我添加了一个UITextField并将其更改为CustomUITextField。

当我启动我的应用程序,该CustomUITextField呈现为一个的UITextField,我有错误消息:

Unknown class CustomUITextField in interface builder file 

当我在故事板看都LoginViewController和CustomUITextField,它不会让我添加模块名称。即使我强迫它,我仍然有同样的问题。当然,如果我创建自己的LoginViewController和CustomUITextField(在Swift或Objective-C中),一切工作正常。所以,我想这个库有什么问题......是否有某个特定的配置或标志用于某处?

谢谢

回答

0

我自己找到了答案。

我只需要创建一个main.swift文件并强制我的应用程序加载我的自定义类。

import UIKit 

//My custom class 
CustomUITextField.self 

UIApplicationMain(Process.argc, Process.unsafeArgv, NSStringFromClass(UIApplication), NSStringFromClass(AppDelegate)) 
相关问题