2017-04-19 67 views
0

我有两个自定义单元格,但无法为这两个单元格设置静态高度,我需要第一个单元格的高度为100,但每个其他单元格的高度为40.下面的代码使所有单元格都具有一个100的高度,而不是第一个。我如何拥有两个不同高度的独立单元?

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { 
     if(indexPath.row == 0) { 
      return 100.0 
     } 
      return 40.0 
    } 
+0

该帖子没有提到任何关于高度的信息。 – joethemow

+1

乔看到第二个链接重复:http://stackoverflow.com/questions/39071603/swift-how-to-set-dynamic-cell-height-in-tableviewcontroller-which-contains-more – JAL

回答

0

你可以把你的第一个单元格放在不同的部分。

func numberOfSections(in tableView: UITableView) -> Int { 
    return 2 
} 

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    if section == 0 { 
     return 1 
    }else { 
     return yourArray.count 
} 

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    if indexPath.section == 1 { 
     let cell = tableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath) as! FirstCustomCell 
     return cell 
    }else{ 
     let cell = tableView.dequeueReusableCell(withIdentifier: cellId, for: indexPath) as! SecondCustomCell 
     return cell 
} 

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { 
    if indexPath.section == 1 { 
     return 100 
    } else{ 
     return 40 
} 
相关问题