我在 ViewController 的什么地方放置初始化代码?
Where in my ViewController do I put initializing code?
我正在尝试将 FittedSheet (Repo) 添加到我的应用程序中,在他们的使用说明中,他们只有这段代码,没有关于将其放置在何处的进一步说明。
let controller = MyViewController()
let sheetController = SheetViewController(controller: controller)
// It is important to set animated to false or it behaves weird currently
self.present(sheetController, animated: false, completion: nil)
我想知道该代码应该放在哪里,以便我可以在我的应用程序中包含 FittedSheet 的基本版本。任何输入将不胜感激,我是 swift 的新手,我的应用程序中的所有后端数据都可以正常工作,但我很难显示它。
MyViewController() 是一个控制器名称,其数据需要使用 FittedSheet 库呈现。
我举个例子。
在下面的示例中,我在我的项目中创建了 customSheetController。我在故事板中设计了 UI 并为此创建了一个 swift class。
customSheetController storyboard UI
下面是customSheetControllerswiftclass语法
class customSheetController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}
在另一个 viewcontroller class 中,打开那个 sheet 在 collection 查看项目点击。
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
if let sheetView = storyboard.instantiateViewController(withIdentifier: "customSheetController") as? customSheetController {
let sheetController = SheetViewController(controller: sheetView)
// It is important to set animated to false or it behaves weird currently
self.present(sheetController, animated: false, completion: nil)
}
}
在上面的示例中,我在 collection 查看项目单击时打开了一个 sheet,您可以在按钮事件或任何要打开该 sheet 的事件中添加上面的代码.
另一个例子
让我再举一个例子,假设你的项目中有两个 viewcontroller class 让我们说 A 和 B。你想在 B 控制器上显示 A 控制器。然后你需要修改如下代码。
在 B 控制器 class 中,假设您想在按钮单击时显示 A 控制器,那么您可以在按钮单击事件上编写以下代码
let controller = A()
let sheetController = SheetViewController(controller: controller)
self.present(sheetController, animated: false, completion: nil)
我正在尝试将 FittedSheet (Repo) 添加到我的应用程序中,在他们的使用说明中,他们只有这段代码,没有关于将其放置在何处的进一步说明。
let controller = MyViewController()
let sheetController = SheetViewController(controller: controller)
// It is important to set animated to false or it behaves weird currently
self.present(sheetController, animated: false, completion: nil)
我想知道该代码应该放在哪里,以便我可以在我的应用程序中包含 FittedSheet 的基本版本。任何输入将不胜感激,我是 swift 的新手,我的应用程序中的所有后端数据都可以正常工作,但我很难显示它。
MyViewController() 是一个控制器名称,其数据需要使用 FittedSheet 库呈现。 我举个例子。
在下面的示例中,我在我的项目中创建了 customSheetController。我在故事板中设计了 UI 并为此创建了一个 swift class。
customSheetController storyboard UI
下面是customSheetControllerswiftclass语法
class customSheetController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}
在另一个 viewcontroller class 中,打开那个 sheet 在 collection 查看项目点击。
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
if let sheetView = storyboard.instantiateViewController(withIdentifier: "customSheetController") as? customSheetController {
let sheetController = SheetViewController(controller: sheetView)
// It is important to set animated to false or it behaves weird currently
self.present(sheetController, animated: false, completion: nil)
}
}
在上面的示例中,我在 collection 查看项目单击时打开了一个 sheet,您可以在按钮事件或任何要打开该 sheet 的事件中添加上面的代码.
另一个例子
让我再举一个例子,假设你的项目中有两个 viewcontroller class 让我们说 A 和 B。你想在 B 控制器上显示 A 控制器。然后你需要修改如下代码。
在 B 控制器 class 中,假设您想在按钮单击时显示 A 控制器,那么您可以在按钮单击事件上编写以下代码
let controller = A()
let sheetController = SheetViewController(controller: controller)
self.present(sheetController, animated: false, completion: nil)