Search code examples
iosswiftuitableviewviewcell

Table View Cells on second View


I have a TableView with cells on my first View, and it works well. But I want to click on some cell then should appear new View with new Table View & cells. But after click, I can see only TableView without any cells.

code of SecondViewController

import UIKit
import WebKit
import Kanna
import Gloss

class SecondViewController: UIViewController, UITableViewDelegate, 
UITableViewDataSource {

@IBOutlet weak var menuTable: SecondViewControllerTableViewCell!


public func tableView(_ tableView: UITableView, 
numberOfRowsInSection section: Int) -> Int {
    return 3
}
public func tableView(_ tableView: UITableView, cellForRowAt 
indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: 
"lte_secondPage", for: indexPath) as! ViewControllerTableViewCell

    return cell
}
override func viewDidLoad() {
    super.viewDidLoad()

}
}

code of FirstViewController

class ViewController: UIViewController, UITableViewDelegate,     
UITableViewDataSource {
let logos = ["ks", "vf", "ls"]
func tableView(_ tableView: UITableView, numberOfRowsInSection 
section: Int) -> Int {
    return logos.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: 
IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: 
"lte_firstPage", for: indexPath) as! ViewControllerTableViewCell
   @code@
    }
    return cell
}

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: 
IndexPath) {
    performSegue(withIdentifier: "segue", sender: self)
}


override func viewDidLoad() {
    super.viewDidLoad()

}

Code of First Table Cell Controller

import UIKit

class ViewControllerTableViewCell: UITableViewCell {
@IBOutlet weak var logoImage: UIImageView!
@IBOutlet weak var regionQuantity: UILabel!
@IBOutlet weak var localityQuantity: UILabel!
@IBOutlet weak var BSQuantity: UILabel!
@IBOutlet weak var updateDate: UILabel!
@IBOutlet weak var namesOfBS: UILabel!


override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func setSelected(_ selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)


}

}

Code of Second Table Cell Controller

 import UIKit

class SecondViewControllerTableViewCell: UITableViewCell {
@IBOutlet weak var label: UILabel!

override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func setSelected(_ selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)

    // Configure the view for the selected state
}

}

And when I tried to print something in public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { print(3) return 3 } it printed nothing and 2019-01-04 22:54:07.057626+0200 BaseStation[12620:273434] <UIView: 0x7f9f52c1e640; frame = (0 0; 375 667); autoresize = W+H; layer = <CALayer: 0x600001a62a80>>'s window is not equal to <BaseStation.SecondViewController: 0x7f9f52c239e0>'s view's window! in debuger apeared after click onto cells in first View


Solution

  • I think what you are asking is .. When you click on a cell in your tableview, you navigate to a new view controller. And this new view controller has a tableview that is not being populated with any cells.

    Essentially your question is.. Why is your tableview empty.

    1) Have you checked if you correctly set the table views datasource?

    2) Is the datasource empty?

    3) Does your tableview have a visible height/width?