JCMyAvatorCell.swift 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. //
  2. // JCMyAvatorCell.swift
  3. // JChat
  4. //
  5. // Created by deng on 2017/3/30.
  6. // Copyright © 2017年 HXHG. All rights reserved.
  7. //
  8. import UIKit
  9. import JMessage
  10. class JCMyAvatorCell: UITableViewCell {
  11. override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
  12. super.init(style: style, reuseIdentifier: reuseIdentifier)
  13. _init()
  14. }
  15. required init?(coder aDecoder: NSCoder) {
  16. super.init(coder: aDecoder)
  17. _init()
  18. }
  19. override func awakeFromNib() {
  20. super.awakeFromNib()
  21. _init()
  22. }
  23. private lazy var avatorView: UIImageView = {
  24. let avatorView = UIImageView()
  25. avatorView.contentMode = .scaleAspectFill
  26. avatorView.clipsToBounds = true
  27. return avatorView
  28. }()
  29. private lazy var nameLabel: UILabel = {
  30. let nameLabel = UILabel()
  31. nameLabel.textAlignment = .center
  32. nameLabel.font = UIFont.systemFont(ofSize: 14)
  33. nameLabel.textColor = UIColor(netHex: 0x999999)
  34. nameLabel.backgroundColor = .white
  35. nameLabel.layer.masksToBounds = true
  36. return nameLabel
  37. }()
  38. private lazy var defaultAvator = UIImage.loadImage("com_icon_user_80")
  39. //MARK: - private func
  40. private func _init() {
  41. contentView.addSubview(avatorView)
  42. contentView.addSubview(nameLabel)
  43. addConstraint(_JCLayoutConstraintMake(avatorView, .top, .equal, contentView, .top, 25))
  44. addConstraint(_JCLayoutConstraintMake(avatorView, .centerX, .equal, contentView, .centerX))
  45. addConstraint(_JCLayoutConstraintMake(avatorView, .width, .equal, nil, .notAnAttribute, 80))
  46. addConstraint(_JCLayoutConstraintMake(avatorView, .height, .equal, nil, .notAnAttribute, 80))
  47. addConstraint(_JCLayoutConstraintMake(nameLabel, .top, .equal, avatorView, .bottom, 9))
  48. addConstraint(_JCLayoutConstraintMake(nameLabel, .right, .equal, contentView, .right))
  49. addConstraint(_JCLayoutConstraintMake(nameLabel, .left, .equal, contentView, .left))
  50. addConstraint(_JCLayoutConstraintMake(nameLabel, .height, .equal, nil, .notAnAttribute, 14))
  51. }
  52. func bindData(user: JMSGUser) {
  53. nameLabel.text = "用户名:" + user.username
  54. user.thumbAvatarData { (data, username, error) in
  55. if let imageData = data {
  56. let image = UIImage(data: imageData)
  57. self.avatorView.image = image
  58. } else {
  59. self.avatorView.image = self.defaultAvator
  60. }
  61. }
  62. }
  63. }