如何重新加载包含ViewControllers的UIScrollView以添加/删除视图控制器

时间:2019-11-12 20:01:57

标签: swift scrollview protocols viewcontroller viewdidload

我有一个scrollView,其中包含动态数量的WeatherViewController,每个WeatherViewController显示用户已保存的不同城市的天气数据。用户可以从WeatherViewControllers筛选到CityListViewController。他们可以在其中从列表中添加和删除城市,而在解散CityListViewController后又应从scrollView中添加和删除WeatherViewControllers,这就是我遇到的问题。

当前,我正在尝试使用一种协议在关闭CityListViewController时在scrollViewController中调用viewDidLoad,但出现错误:

  

致命错误:展开Optional时意外发现nil   值:文件)

何时到达:

using (var reader = ParquetFile.CreateRowReader<MyStruct>(@"C:\Users\X\Documents\X.parquet"))
{
    /* read rows */
}

侧注:最初打开应用程序时,scrollView会正确加载,其中UIScrollView中的所有正确WeatherWeatherControllers以及列表中正确的城市。

using (var reader = ParquetFile.CreateRowReader<(int firstField, string secondField)>(@"C:\Users\X\Documents\X.parquet"))
{
    /* read rows */
}

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

let storyboard = UIStoryboard(name: "Main", bundle: nil)
let weatherScreen = storyboard.instantiateViewController(withIdentifier:  "View Controller") as! ViewController

最好使用一个单词作为标识符:“ ViewController”,并为其指定与类相同的名称。确保在您的实际故事板上也设置这些值。