Вам просто нужно поиграть с UIView, UILabel и UIImageView.
Вы просматриваете иерархию, как показано ниже ...
- UIView (mainView)
- UIImageView (imageView)
- UILabel
Вам нужно сделать mainView.clipsToBounds = true
, чтобы последавая ему угловой радиус, его подпредставление не будет выходить за границы его суперпредставления.
Для imageView вы можете установить его режим контента для заполнения аспекта / подгонки в соответствии с вашими требованиями.