Как я могу добавить пространство над и под ImageView в строке в TableView? - PullRequest
0 голосов
/ 06 июля 2019

Высота строки в этом табличном представлении равна 54. Высота ImageView равна 44. Мне бы хотелось 5 выше и ниже ImageView (некоторые располагаются так, чтобы они не касались друг друга).По сути, центрирование ImageView вертикально по строке (или ContentView).Независимо от того, что я пробовал, изображение всегда привязывается в верхнем левом углу строки (поскольку это музыкальное приложение, оно должно запускаться на телефоне, поэтому у меня нет изображения для результата).Мне стыдно сказать, что я часами пытался это сделать.Буду признателен за любую помощь.Спасибо.

enter image description here

Ответы [ 2 ]

1 голос
/ 10 июля 2019

Я был прав, было другое место, которое заставляло изображение в верхнем левом углу.Это было в коде при настройке содержимого строки, как показано ниже.Я написал эту часть давным-давно, когда я знал еще меньше о Swift (цель состояла в том, чтобы удостовериться, что изображение масштабируется. Хотя это может и не понадобиться. Я протестирую код без него. Тем не менее, спасибо, Зая, что взяливремя помочь!

        let albumArtwork = rowItem.representativeItem?.artwork
        let tableImageSize = CGSize(width: 10, height: 10) // This doesn't matter, it gets resized below
        let cellImage: UIImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 44, height: 44)) // The albumImageView is 44 by 44
1 голос
/ 07 июля 2019

На вашем месте я бы таким образом установил свои ограничения. Во-первых, я бы установил ограничение ширины в представлении изображения равным 44. [Примечание: я установил высоту строки равной 54, как и у вас.] Затем я бы установил ограничение соотношения сторон в представлении изображения равным 1: 1 ( при условии, что вы хотите квадратное изображение). Затем я бы поместил вид изображения и метку в горизонтальный вид стека. Если вы сгруппируете все в виде стека, я обнаружу, что вам нужно беспокоиться о меньших ограничениях (вид стека позаботится о расстоянии между видом изображения и надписью, хотя вы можете соответствующим образом скорректировать при необходимости). Затем я добавил бы начальные и конечные ограничения в представление стека. И, наконец, отцентрируйте вид стека вертикально в контейнере.

Надеюсь, это помогло. Удачи!

Image of simulator showing stack view

Image of storyboard showing constraints on stack view

...