2014-11-06 4 views
0

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

var count = 0 
    var propic: NSString = "" 
    var name: NSString = "" 
    for data in listDataArray { 
     if(indexPath.row == count) { 
      if let pic = data["profile_pic"] as? NSString { 
       propic = pic 
      } 
      if let n = data["full_name"] as? NSString { 
       name = n 
      } 
     } 
     count++ 
    } 
    let decodedData = NSData(base64EncodedString: propic, options: NSDataBase64DecodingOptions(0)) 
    var decodedimage = UIImage(data: decodedData!) 
    var cell:TableViewCell? = tableView.dequeueReusableCellWithIdentifier("Cell") as? TableViewCell 

    if (cell == nil) 
    { 
     let nib:Array = NSBundle.mainBundle().loadNibNamed("TableViewCell", owner: self, options: nil) 
     cell = nib[0] as? TableViewCell 
    } 

    cell!.nameLabel!.text = name 
    cell!.imageView!.image = decodedimage 
    cell!.imageView!.layer.cornerRadius = cell!.recipeImageView!.frame.size.width/2 
    cell!.imageView!.layer.borderWidth = 5.0 
    cell!.imageView!.clipsToBounds = true 
    cell!.imageView!.layer.borderColor = UIColor(red: 128/225.0, green: 188/225.0, blue: 163/225.0, alpha: 0.45).CGColor; 
    return cell; 

Вот это .xib

xib

и TableViewCell.swift файл:

@IBOutlet var imageView : UIImageView? = UIImageView(frame: CGRectMake(10, 10, 50, 50)) 
@IBOutlet var nameLabel : UILabel? 
@IBOutlet var timeLabel : UILabel? 

override func awakeFromNib() { 
    super.awakeFromNib() 
    // Initialization code 
} 

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

    // Configure the view for the selected state 
} 

и результат в тренажере:

result

мне нужно изображения быть ограничено блоком (и по кругу), чтобы показать, как это:

image

только кроме того, чтобы быть квадратные изображения, мне нужно, чтобы они были круг. Как я могу это сделать?

+0

Используете ли вы авто макет? Если да, каковы ограничения для ImageView? – Tom

+0

@Tom Я не использую автоматический макет – Haring10

+0

Чтобы обрезать изображения в кругах, вы можете прочитать здесь: http://stackoverflow.com/questions/6530573/how-to-crop-uiimage-on-oval-shape- или круг-образная форма. Кроме того, чтобы увидеть проблему в коде, мне нужно больше понять. Можете ли вы выслать мне (часть) свой код? Вы ссылаетесь на ячейку! .recipeImageView! который я не вижу нигде в вашем опубликованном коде. – Tom

ответ

0

Вы можете добавить эту библиотеку в свой проект с помощью Cocoapods platform :ios pod 'APAvatarImageView'

и добавить класс APAvatarImageView к UIImageView в раскадровку или XIB и он автоматически будет круг https://github.com/ankurp/APAvatarImageView

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