Вам может потребоваться сообщить autoLayout, что вы хотите, чтобы ширина была гибкой. Вы можете сделать это, добавив эту строку в оба определения кнопок: -
// Replace "myButton" with your buttons name in your case "v"
myButton.autoresizingMask = [.flexibleWidth]
Правки: - Поскольку вы используете системные изображения, если вы хотите, чтобы ваша кнопка выглядела больше, чем Вы должны увеличить размер шрифта в конфигурации вашего изображения. Отредактируйте ваши изображения, добавив конфигурацию с вашими предпочтительными размерами шрифта.
Например: -
let communityButton: UIButton = {
let v = UIButton()
//----
// NB: - Change the font size for bigger icons and viceversa
let imageSymbolConfiguration = UIImage.SymbolConfiguration(pointSize: 50, weight: .regular, scale: .large)
v.setImage(UIImage(systemName: "person.3.fill", withConfiguration: imageSymbolConfiguration), for: .normal)
// -----
return v
}()
let profileButton: UIButton = {
let v = UIButton()
// ----
// NB: - Change the font size for bigger icons and viceversa
let imageSymbolConfiguration = UIImage.SymbolConfiguration(pointSize: 50, weight: .regular, scale: .large)
v.setImage(UIImage(systemName: "person.fill", withConfiguration: imageSymbolConfiguration), for: .normal)
// ----
return v
}()
Объяснение: -
Из официальной документации
«Объекты конфигурации изображения символа включают в себя такие детали, как размер точки, масштаб, стиль текста, вес и шрифт, применяемые к изображению символа. Система использует эти данные, чтобы определить, какой вариант изображения использовать и как масштабировать или стилизовать изображение. изображение. "