2014-08-27 2 views
0

У меня есть пользовательский tableCell, который работает нормально, пока я не пытаюсь добавить изображение слева от каждой ячейки. при размещении изображения внутри conventView все работает нормально, но мне не нравится, когда разделитель начинается в середине изображения.пользовательский UITableViewCell, ячейка макета по умолчанию imageViewer

, и я хочу, чтобы исключить пробел слева от каждой строки, я хочу разместить там свое изображение, поэтому ящик ячейки будет отображаться только под содержимым ячейки, а не под частью изображения, я растрескиваю это сепаратор в течение нескольких часов, и теперь я не могу показать мое содержание ..

также мой тренажер я взять что-то вроде 10 секунд, чтобы показать содержимое таблицы ..

может у помочь мне пожалуйста, я знаю его предположим, что это простая вещь, но я не могу это сделать ...

спасибо ..

вот мой заказ TableCell

import UIKit 

class TableCellMessages: UITableViewCell { 
    var labUerName = UILabel(); 
    var labMessage = UILabel(); 
    var labTime = UILabel(); 
    var labRead = UILabel(); 


    override func awakeFromNib() { 
     super.awakeFromNib() 

     self.imageView.clipsToBounds = true 
     self.imageView.layer.cornerRadius = 22; 
     self.imageView.contentMode = UIViewContentMode.ScaleAspectFill 
//  self.imageView.autoresizingMask = UIViewAutoresizing.None 

     var currentFont:UIFont = labUerName.font 
     labUerName.font = UIFont.boldSystemFontOfSize(currentFont.pointSize); 

     labUerName.setTranslatesAutoresizingMaskIntoConstraints(false) 
     labMessage.setTranslatesAutoresizingMaskIntoConstraints(false) 
     labTime.setTranslatesAutoresizingMaskIntoConstraints(false) 
     labRead.setTranslatesAutoresizingMaskIntoConstraints(false) 

     contentView.addSubview(labUerName) 
     contentView.addSubview(labMessage) 
     contentView.addSubview(labTime) 
     contentView.addSubview(labRead) 


     //Set layout 
     var viewsDict = Dictionary <String, UIView>() 
     viewsDict["username"] = labUerName; 
     viewsDict["message"] = labMessage; 
     viewsDict["time"] = labTime; 
     viewsDict["read"] = labRead; 

     contentView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|-0-[username]-1-[message]", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDict)) 
     contentView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|-0-[time]-1-[read]", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDict)) 
     contentView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|-[username]-[time]-|", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDict)) 
     contentView.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|-[message]-[read]-|", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDict)) 

    } 

    override func layoutSubviews() { 
     super.layoutSubviews() 

     var x = self.frame.origin.x; 
     var y = self.frame.origin.y; 
     var width = self.frame.width; 
     var height = self.frame.height; 

     self.imageView.frame = CGRectMake(x, y, height, height); 
     self.contentView.frame = CGRectMake(x + height, y, width - height , height) 
    } 

} 

ответ

0

Чтобы зафиксировать сепаратор клеток, вам нужно использовать свойство separatorInset на вашем UITableView, которые вы, скорее всего, есть ссылка на вашем контроллере представления:

self.tableView.separatorInset = UIEdgeInsets (0, 0, 0, 0)

См https://developer.apple.com/library/prerelease/iOS/documentation/UIKit/Reference/UITableView_Class/index.html#//apple_ref/occ/instp/UITableView/separatorInset

Кроме того, вы избавите себя и ваших коллег программистов много головная боль, если вы создадите свою собственную ячейку в качестве ячейки прототипа в своем раскадровке, вместо того, чтобы программировать свои метки и т. д.

+0

Я нахожу автоматическую компоновку очень простой, когда ее единственный автомат, и я предпочитаю программировать, тогда используйте раскадровку, каким-либо образом, как я могу устранить пробел слева, что я поместил бы изображение в contentView? –

+0

Я делаю это неправильно, пытаясь использовать сборку в imageViewer? –

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