我正在使用故事板將項目聚合到Swift中。舊版本是Objective-C,並沒有使用Storyboard。原始版本有許多ViewController,它們是CoreDataFetchedResultsViewController的子類。在CoreFetchedResultsViewController類中,我有一個用於許多方法的UITableView的屬性。下面是CoreFetchedResultsController超類中UITableView的聲明。通過故事板連接到超類屬性
@interface CoreDataFetchedResultsViewController : UIViewController <NSFetchedResultsControllerDelegate, UITableViewDataSource, UITableViewDelegate>
@property (nonatomic, strong) UITableView *storyTableView;
在該子類的CoreFetchedResultsViewController的ViewControllers,我創建了一個的tableView並將其設置爲CoreFetchedResultsViewController在viewDidLoadMethod的storyTableView財產。
@interface FLOViewController : CoreDataFetchedResultsViewController <FLODataHandlerDelegate, UIActionSheetDelegate>
viewDidLoad中()從連接到CoreDataFetchedResultsViewController財產的tableView沒有崩潰的應用程序的FLOViewController類
- (void)viewDidLoad
{
[super viewDidLoad];
self.storyTableView = [[UITableView alloc] initWithFrame: CGRectMake(0, 44, 320.0f, 436.0f) style: UITableViewStylePlain];
self.storyTableView.backgroundColor = [UIColor clearColor];
self.storyTableView.rowHeight = 81;
self.storyTableView.separatorColor = [UIColor blackColor];
[self.view addSubview: self.storyTableView];
self.storyTableView.delegate = self;
self.storyTableView.dataSource = self;
}
隨着的tableView。
我使用故事板時發生故障。由於我將tableView放置在Storyboard中的FLOViewController中,因此我無法將它連接到超類CoreDataFetchedResultsViewController中的storyTableView屬性。
將Storyboard元素連接到超類屬性的最佳方式是什麼?你是否在子類中創建了一個插座,然後將該屬性設置爲超類屬性?
class FLOViewController
{
@IBOutlet var floViewControllerTableView: UITableView!
override func viewDidLoad()
{
super.viewDidLoad()
self.storyTableView = self.floViewControllerTableView
}
}
這似乎工作,但似乎是錯誤的我。彷彿複製對象不是最好的主意。任何幫助,將不勝感激。
保重,
喬恩