2016-05-20 9 views
0

У меня есть один tableView. В этом я создал пользовательскую ячейку. Теперь я хочу добиться такого же эффекта, как показано на изображении. Я много пробовал с помощью selectionStyle и других продуктов, но мне это не удалось.Изменить текст и цвет строки таблицы табелирования

enter image description here

Я хочу изменить BackgroundColor, FONTCOLOR и imagecolor. Как я могу это достичь? Это код моего UITableViewCell.

import UIKit 

public class BaseTableViewCell : UITableViewCell { 
    class var identifier: String { return String.className(self) } 

    public required init?(coder aDecoder: NSCoder) { 
     super.init(coder: aDecoder) 

    } 

    override init(style: UITableViewCellStyle, reuseIdentifier: String?) { 
     super.init(style: style, reuseIdentifier: reuseIdentifier) 


    } 

    public override func awakeFromNib() { 
     self.selectionStyle = UITableViewCellSelectionStyle.Gray 
    } 


    public class func height() -> CGFloat { 
     return 40 
    } 

    public func setData(data: Any?, image : String!, alignment: NSTextAlignment!, font: UIColor) { 

     self.textLabel?.font = UIFont(name: "Montserrat-Light", size: 12) 
     self.textLabel?.textAlignment = alignment 
     self.textLabel?.textColor = font 

     if let menuText = data as? String { 
      self.textLabel?.text = menuText 
     } 

     self.imageView?.image = UIImage(named: image) 
    } 

    override public func setHighlighted(highlighted: Bool, animated: Bool) { 
     if highlighted { 


     } else { 
      self.alpha = 1.0 
     } 
    } 

    // ignore the default handling 
    override public func setSelected(selected: Bool, animated: Bool) { 

    } 

} 

спасибо.

+0

, когда u коснитесь этой ячейки, она должна измениться так же .... это ваш вопрос –

+0

Ya час Это должно измениться. @ Uday.M –

ответ

3

Добавить это:

override public func setSelected(selected: Bool) { 
    super.setSelected(selected) 
    // Do your customization here 

    // changing text color 
    self.textLabel?.textColor = selected ? UIColor.blueColor() : UIColor.blackColor() 
} 
+0

Спасибо. Это меняет цвет фона, но я также хочу изменить цвет шрифта. @bobby –

+0

обновлено @RiddhiShah – CZ54

+0

Как изменить цвет изображения? –

-2

переопределения общественности функ setSelected (_ отмеченными: Bool, анимированные: Bool) { super.setSelected (выбран, анимированные: правда)

 self.textLabel?.textColor = selected ? UIColor.blue : UIColor.black 
    self.imageView?.tintColor = selected ? UIColor.blue : UIColor.black 

ImageView ?. image = imageView? .image! .withRenderingMode (.alwaysTemplate) }

Смежные вопросы