这是我的故事板:
UITableViewController 有一个通用的 UITableCell (MMSwitchTableCell),它有一个图像、一个标签和一个开关。
这个想法是能够创建不同的 UITableViewControllers 来呈现具有相同布局的不同数据,即具有相同的单元格对象和相同的行为。例如,一次 UITableView 有一个可以帮助您选择水果的单元格列表,第二次 UITable 可以帮助您选择家具。这两个 UITablesViewController 之间没有任何关系(没有继承或聚合),它们是不同 viewController 中的不同实例,我只想重用设计的控件和 UITableCell 代码。
所以我的代码有一个 UIViewController 我在其中声明了一个属性:
@property (strong, nonatomic) MMGoSeePopoverTableViewController* goSeePopoverTableViewController;
并延迟加载它:
-(MMGoSeePopoverTableViewController*) goSeePopoverTableViewController
{
if(_goSeePopoverTableViewController == nil)
{
_goSeePopoverTableViewController =(MMGoSeePopoverTableViewController*)
[self.storyboard instantiateViewControllerWithIdentifier:@"switchPopover"];
}
return _goSeePopoverTableViewController;
}
和第二个 UIViewController 我在其中声明了一个属性:
@property (strong, nonatomic) MMLayersPopoverTableViewController* layersPopoverTableViewController;
并延迟加载它:
-(MMLayersPopoverTableViewController*) layersPopoverTableViewController
{
if(_layersPopoverTableViewController == nil)
{
_layersPopoverTableViewController =(MMLayersPopoverTableViewController*)
[self.storyboard instantiateViewControllerWithIdentifier:@"switchPopover"];
}
return _layersPopoverTableViewController;
}
在情节提要中,我将自定义类设置为 MMLayersPopoverTableViewController,但我希望将其留空并以某种方式在代码中进行设置。我想我应该在惰性加载器中执行此操作,但我不知道该怎么做。
编辑
建议的“这个问题在这里可能已经有了答案:”与我所问的不同。我已经修改了帖子以更好地解释我的问题。