我有一个通用的UIViewController,它有多种用途。它可以通过6种不同的方式实例化,因为它设计得非常通用。让我们将这个多用途viewcontroller称为MultiPurposeViewController。
plot.linear.equations <- function(X, ...){
dat <- data.frame(x = X)
p <- ggplot(mapping = aes(x = X))
arguments <- list(...)
mycolors <- c("red", "blue", "green", "orange")
labels <- c("C 1", "C 2", "C 3", "C 4")
for(i in 1:length(arguments)){
dat$label <- labels[i]
C <- unlist(arguments[i])
p <- p + stat_function(data = dat, fun=F.Linear, args = list(a=C[1], b=C[2], c=C[3]), geom="area", colour="black", alpha=0.2, aes(fill = label))
}
p <- p + scale_x_continuous(name = "A") +
scale_y_continuous(name = "C") +
scale_fill_manual("Constraints", values = c("red", "blue", "green", "orange"))
return(p)
}
Inside Type1VC:
Type1VC = MultiPurposeViewController()// initiated differently
self.navigationController.push(Type1VC)
是否允许使用导航控制器进行操作?
编辑:
Type2VC = MultiPurposeViewController()// initiated differently than before
self.navigationController.push(Type2VC)
堆栈时是否允许这样的操作?UINavigationController
的多个实例堆叠到UIViewContoller
堆栈而没有任何内存泄漏?答案 0 :(得分:4)
官方Apple Doc明确提到:
要实现导航界面,您必须确定要传输的数据 出现在数据层次结构的每个级别。对于每个级别,您必须 提供内容视图控制器来管理和呈现数据 那个级别。如果多个级别的演示文稿是相同的,那么您 可以创建相同视图控制器类的多个实例 配置每个人来管理自己的数据集。例如, 照片应用程序有三种不同的演示文稿类型。
您可以通过以下方式阅读更多内容:https://developer.apple.com/library/content/documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/NavigationControllers.html
希望这能让您完整了解您的问题。 随意评论。