2016-11-18 6 views
0

私はiPhone用のスウィフトでTodoアプリを作成しています。私は、テーブルビューにタスクの名前と時間を表示するようにテーブルビューを設定します。 Textlabelはタスクの正しい名前を表示しますが、detailTextLabelは時刻ではなく詳細のみを表示します。スワイプのテーブルビューdetailTextLabel

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {  
    var cell = tableView.dequeueReusableCell(withIdentifier: "cell") as UITableViewCell! 
    let task = tasks[indexPath.row]   

    if task.done { 

     cell?.textLabel!.text = "‼️\(task.name!)" 
     task.time = cell!.detailTextLabel!.text 
    } else {    
     cell?.textLabel!.text = "\(task.name!)" 
     task.time = cell!.detailTextLabel!.text 
    }   
    return cell! 
} 

答えて

0

detailTextLabelの割り当ては、後方にあります。

if task.done { 

    cell?.textLabel!.text = "‼️\(task.name!)" 
    cell!.detailTextLabel!.text = task.time 
} 
else { 

    cell?.textLabel!.text = "\(task.name!)" 
    cell!.detailTextLabel!.text = task.time 

} 
+0

はThaks男。それを見たことがない:D – tc34

+0

問題はありません!それが解決された場合は、回答としてマークしてください。 (それはした;) – TheValyreanGroup

0

詳細ラベルのテキストを実際に設定することはありません。

cell?.detailTextLabel!.text = task.time.longStyleDateString

そして、ここでその日の拡張子です:あなたはこのような何かでそれを設定する必要があります

extension Date { var longStyleDateString: String { let formatter = DateFormatter() formatter.dateStyle = .long return formatter.string(from: self) } }

関連する問題