2016-07-25 6 views
0

異なる色のセルを使って異なるカテゴリにセルを分割するアプリを作っていますが、ユーザーがセルをタップしてチェックマークを付けて選択する機能もあります。色付きのセルを無効にして、ユーザーがそれらをタップするとセルにチェックマークを付けずに選択するようにしたいと思います。は、背景色に基づいてセルを無効にすることはできません

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
{ 
    let cellIdentifier = "instrumentTableCell" 
    let cell: InstrumentTableCell! = tableView.dequeueReusableCellWithIdentifier(identifier) as? InstrumentTableCell 

    checked = Array(count:recipies.count, repeatedValue:false) 
    cell.configurateTheCell(recipies[indexPath.row]) 

    if !checked[indexPath.row] { 
     cell.accessoryType = .None 
    } else if checked[indexPath.row] { 
     cell.accessoryType = .Checkmark 
    } 


    return cell 
} 
+1

'cell.userInteractionEnabled'は役に立ちますか? – paulvs

+0

@paulvsうまく働いた! – zach2161

+0

答えとして追加しました。 – paulvs

答えて

1

cell.userInteractionEnabled = falseをお試しください: これは私のチェックマーク機能です。

0

あなたはこのようなそこのフォントや背景色などの細胞の機能にアクセスすることができます

tableView:willDisplayCell:forRowAtIndexPath: 

UITableViewDelegate機能を使用します。色に基づいて

cell.backgroundColor 
cell.textLabel.backgroundColor 
cell.detailTextLabel.backgroundColor 

を、あなたはその後、有効/タップ用のセルを無効にすることができますを使用してください。

必要に応じて、他の部分の有効/無効を切り替えることができます彼はここにもセルを持っています。

関連する問題