Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为什么不同表视图控制器中的titleForHeaderInstruction方法不起作用?_Ios_Iphone_Swift_Uitableview - Fatal编程技术网

Ios 为什么不同表视图控制器中的titleForHeaderInstruction方法不起作用?

Ios 为什么不同表视图控制器中的titleForHeaderInstruction方法不起作用?,ios,iphone,swift,uitableview,Ios,Iphone,Swift,Uitableview,为什么不同表视图控制器中的titleForheaderInsection方法不起作用 我在一个故事板中为我的应用程序创建了两个具有不同功能的表视图控制器,一个是SettingStableViewControllR,一个是CitylistTableViewControllR,它们应该具有不同的节标题 tableView:titleForHeaderInSection方法用于命名节标题,但不幸的是只有SettingsTableViewControlelr中的方法在iOS simulator中正确出现

为什么不同表视图控制器中的
titleForheaderInsection
方法不起作用

我在一个故事板中为我的应用程序创建了两个具有不同功能的表视图控制器,一个是
SettingStableViewControllR
,一个是
CitylistTableViewControllR
,它们应该具有不同的节标题

tableView:titleForHeaderInSection
方法用于命名节标题,但不幸的是只有
SettingsTableViewControlelr
中的方法在iOS simulator中正确出现,但
CitylistTableViewControlelr
中的方法不起作用,我在
tableView:titleForHeaderInSection
方法上放置了一个断点,发现该方法甚至不能在
citylistableviewcontrolelr
中调用。下面是我的代码:

设置StableViewer控制器

城市列表视图控件

我的问题是:

  • 为什么
    tableView:titleForHeaderInSection
    方法不能在
    CityListTableViewController
    中调用
  • 如何更正代码,使章节标题分别出现在simulator/iPhone上

  • 看看两者之间的区别:

    在调用它的第一个视图控制器中,函数声明如下:

    override func tableView(tableView: UITableView, titleForHeaderInSection section:Int) -> String? {
        switch section{
    
    func tableView(tableView: UITableView, titleForheaderInsection section: Int) -> String? {
        switch section {
    
    而在一个没有被称为的例子中,它是这样声明的:

    override func tableView(tableView: UITableView, titleForHeaderInSection section:Int) -> String? {
        switch section{
    
    func tableView(tableView: UITableView, titleForheaderInsection section: Int) -> String? {
        switch section {
    

    您缺少覆盖声明。另外,您在第二个声明中没有大写“header”(感谢您指出Jesper)。

    感谢您的回答。我尝试在方法之前添加“override”关键字,但编译器报告错误显示“方法不重写其超类中的任何方法”。您键入了它
    titleForheaderInsection
    ,而不是
    titleForheaderInsection
    。选择器区分大小写。非常感谢,@Jesper&Yarneo。这就是造成问题的原因。