以下はmy tableViewのコードです。定義が前の値と競合しているというcellForRowAtIndexPath関数宣言にエラーがあります。以前のスタックオーバーフローの問題は、関数がオプションの値としてUITableViewCellを返すようにするソリューションを持っていますが、これは私のためにエラーを修正しません。 viewControllerがプロトコルUITableViewDataSourceに準拠していないというエラーもありますが、これはcellForRowAtIndexPathメソッドのエラーが原因であると想定しています。swift cellForRowAtIndexPath定義が前の値と矛盾しています
私は、動作するtableViewに似たコードを持っていますが、Xcodeを更新する前に約1ヶ月前に書かれています。おそらく、最近の迅速な変更により、このエラーが発生していますか?
func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int
{
return 1
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell? {
let cellIdentifier = "tableViewCell"
let newCell : TableViewCell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier) as! TableViewCell
newCell.heading.text = names[indexPath.row]
return newCell
}
リアル問題は、あなたが定義した関数がUITableViewCellを返すことです? UITableViewCellを返す必要があります。 ?を削除しますか?戻り値の型から。 – ryantxr
いや私は一緒に試してみましたか?まだエラーが発生していた – ray
?間違いなく正しい方法です。 – ryantxr