【发布时间】:2017-03-18 10:56:23
【问题描述】:
我是一名 Android 开发人员,最近开始学习 Swift。我面临一个问题,我无法在UIStoryboard 中为UITableView 分配自定义类。当我写下类名并按 Enter 键时,iMac 会发出哔哔声。我一直坚持这个问题。有人可以在这里指导我吗?
这是课程
import Foundation
import UIKit
class MemeTableViewController: UIViewController,UITableViewDataSource,UITableViewDelegate {
var memes : [Meme]!
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let appDelegate = UIApplication.shared.delegate as! AppDelegate
memes = appDelegate.meme
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return memes.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "tablecell")!
let meme = memes[(indexPath as NSIndexPath).row]
cell.imageView?.image = meme.memeImage
cell.textLabel?.text = "\(meme.topText)....\(meme.bottomText)"
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let controller = self.storyboard?.instantiateViewController(withIdentifier: "MemeDetailViewer") as! MemeDetailViewer
let meme = memes[(indexPath as NSIndexPath).row]
controller.memeImage = meme.memeImage
}
}
谢谢!
【问题讨论】:
-
你的类也应该是 UITableViewController 的子类!您分配给 UITableViewController。
-
那么我不需要
UITableViewDataSource和UITableViewDelegate如果我使用UITableViewController? -
是的,你根本不需要它们!您可以直接使用委托功能。
-
@AnuragSharma 继续写答案。我马上接受
-
我的意思是@AnuragSharma 添加答案
标签: ios uitableview swift3 uistoryboard