ios - Swift:UITableView 不使用 reloadData 进行更新

标签 ios iphone swift uitableview

我有一个 UITableView subview ,它应该显示 Game Center 名称,但在调用 reloadData() 时不会更新。

初始化tableView和reloadData函数的代码如下:

import UIKit
import QuartzCore
import GameKit

class LobbyViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

var lobbyView: UITableView!
var lobbyTimer = NSTimer()
var bStartOfTimer: Bool = false
var timerTextView: UITextView = UITextView()


//TABLE VIEW
func initTableView() {
    lobbyView = UITableView(frame: CGRectMake(20, 150, self.view.frame.width - 40, 2*self.view.frame.height/3), style: UITableViewStyle.Plain)
    lobbyView.layer.cornerRadius = 10
    lobbyView.registerClass(LobbyViewCell.self, forCellReuseIdentifier: "cell")

    //lobbyView.frame = CGRectMake(20, self.view.frame.height/3, self.view.frame.width - 40, self.view.frame.height/3)

    lobbyView.delegate = self
    lobbyView.dataSource = self
}

override func viewDidLoad() {

    super.viewDidLoad()

    var background = UIView(frame: self.view.frame)
    background.backgroundColor = UIColor(netHex: cs_navy)
    self.view.addSubview(background)

    addText()
    lobbyTimer = NSTimer.scheduledTimerWithTimeInterval(0.02, target: self, selector: Selector("updateTimer"), userInfo: nil, repeats: true)
    initTableView()

    self.view.addSubview(lobbyView)
}

    func update(){
    if (lobbyView != nil) {
        self.lobbyView.reloadData()
    }
}

我拥有所有其他必要的功能,并且 reloadData() 一直在工作,直到我将 tableView 更改为 subview 。数据源可能不正确吗?

最佳答案

我不确定之前的情况是什么,但我假设您的 Controller 是 UITableViewController。在这种情况下, Controller 的主视图是 UITableView。但是,当您切换到 UIViewController 并以编程方式添加 UITableView 时,您需要确保您的 UITableView 位于 View 层次结构的前面。尝试使用

self.view.insertSubview(lobbyView, 0)

而不是

self.view.addSubview(lobbyView)

关于ios - Swift:UITableView 不使用 reloadData 进行更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31668502/

相关文章:

iphone - 对 iPhone 地址簿中的联系人进行排序

ios - 如何基于 iPhone TrueDepth Camera 生成 3D 模型?

swift - 在动画背景颜色时选择 UITextField

iphone - 无法在 iPad 上正确旋转翻译后的 UIView

ios - Google 附近的消息崩溃了 : AudioRecorderCallbackQueue on deallocation

ios - 你如何打印出核心数据对象?

ios - 在 iOS7 中安装二进制文件时的奇怪行为

iphone - 我们如何在 nsstring 中写入“?

ios - 无法在现有的 tableviewcontroller 上呈现 .xib viewcontroller

swift - 无法将类型 'Data?' 的值转换为预期的参数类型“UIImage”