2017-07-15 52 views
0

我使用xib創建聊天氣泡tableViewCell,但我使用自動佈局來設置約束。
它顯示我的文本超出了我輸入的範圍。
而且我也不想縮小文本。
標籤顯示出我的自定義TableViewCell範圍並設置自動佈局由swift

![constrain ![out of range

而且我還加爲textLabel左約束,它使不同類型的,我想。
我不想像最後一張照片那樣顯示聊天泡泡的空白區域。
我該怎麼處理這種情況?

![add left constrain ![new constrain like this

更新:

class ChatMyTextTableViewCell: UITableViewCell { 

@IBOutlet weak var myImageView: UIImageView! 
@IBOutlet weak var myTextLabel: PaddingLabel! 
@IBOutlet weak var myDateLabel: UILabel! 
@IBOutlet weak var labelWidthConstraint: NSLayoutConstraint! 

override func awakeFromNib() { 
    super.awakeFromNib() 
    // Initialization code 
    self.backgroundColor = defaultBackgroundColor 

    myImageView.layer.masksToBounds = true 
    myImageView.layer.cornerRadius = defaultIconRadius 

    myTextLabel.backgroundColor = defaultChatGreenBubbleColor 
    myTextLabel.layer.masksToBounds = true 
    myTextLabel.layer.cornerRadius = defaultButtonRadius 

    myDateLabel.textColor = defaultChatTimeColor 
} 

override func setSelected(_ selected: Bool, animated: Bool) { 
    super.setSelected(selected, animated: animated) 

    // Configure the view for the selected state 
} 

func loadMessage(_ message:Message) { 

    labelWidthConstraint.constant = UIScreen.main.bounds.size.width - 120 
    myTextLabel.text = message.content 
    myTextLabel.autoresizingMask = [.flexibleWidth,.flexibleHeight] 

    myDateLabel.text = convertToChatDate(date: message.datetime) 
} 
} 

回答

0

您創建標籤寬度約束IBOutlet中

Objectvice-C:

@property (weak, nonatomic) IBOutlet NSLayoutConstraint *msgWidthConst; 

那麼的cellForRowAtIndexPath:

cell.msgWidthConst.constant=[UIScreen mainScreen].bounds.size.width-80; 
cell.msg.text="text"; 
cell.msg.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 

Swift3:

@IBOutlet var labelWidthConstraint: NSLayoutConstraint! 

然後在cellForRowAt:

cell.labelWidthConstraint.constant = UIScreen.main.bounds.size.width-80 
cell.msg.text = "text"; 
cell.msg.autoresizingMask = [.flexibleWidth, .flexibleHeight] 
+0

你好,我用你的建議,它不適合我的工作。我更新了我的單元代碼。謝謝。 –

+0

@tolerate_Me_Thx這是行得通的。檢查此演示https://github.com/vikashkumar2804/tableViewDemo.git –

+0

好的,謝謝你,我試着去想我的錯在哪裏。 –