Убрать второе отображение в кнопке

navigationbar

#1

Всем привет!
Иду по урокам в курсе из подписки с уроками по TableView и CollectionView
Пишу приложение по урокам с собаками и решил попробовать добавить функцию переключения вида с 2-х плиток в ряд на 3 плитки. Скрин изображения ниже
Приложение просто выводит изображения собак плиткой через CollectionView

Для того чтобы сделать такой переключатель, сделал Bar Button Item, присвоил ему изображение square.grid.2x2.fill
Написал функцию, которая меняет отоборажение и задает новую картинку кнопке. Все работает, но появилась проблема, которую не смог решить своими силами - при нажатии на кнопку появляется второе изображение и size кнопки сужается:

  1. https://prnt.sc/1hyi6jw
  2. https://prnt.sc/1hyi8ss
    Кнопку создаю и вставляю кодом, не через storyboard
override func viewDidLoad() {
            super.viewDidLoad()
            let button: UIButton = UIButton(type: .custom)
            button.setImage(UIImage(systemName: "square.grid.2x2.fill"), for: .normal)
            button.addTarget(self, action: #selector(PhotosCollectionViewController.layoutChoose), for: .touchUpInside)
            let barButton = UIBarButtonItem(customView: button)
            self.navigationItem.rightBarButtonItem = barButton

Далее функция экшна на кнопке:

@objc func layoutChoose(sender: UIButton) {
            if itemsPerRow == 3 {
                sender.setBackgroundImage(UIImage(systemName: "square.grid.3x2.fill"), for: .normal)
                itemsPerRow = 2
                collectionView.reloadData()
            } else {
                sender.setBackgroundImage(UIImage(systemName: "square.grid.2x2.fill"), for: .normal)
                itemsPerRow = 3
                collectionView.reloadData()
            }
        }

UPD
Попробовал создать кнопку в сториборде и задать функции через аутлет, но итог такой же


#2

Кинь скрины сюда, ссылки не открываются