Хорошо, я думаю, что вы отображаете список строк, и когда ячейка выбрана, вы добавляете пользователя в массив TransferUsers. Проблема в том, что вы не сохраняете местоположение выбранного пользователя.
Быстрое решение этой проблемы - создать словарь, который объединяет путь индекса с пользователем.
var transferUsers: [IndexPath: UserModel] = [:]
затем, когда пользователь выбран, вы делаете это:
transferUsers[indexPath] = usersArray[indexPath.row]
и когда пользователь отменяется, вы делаете это:
transferUsers.removeValue(forKey: indexPath)
selectedUsersCount может быть свойством:
var selectedUsersCount: Int {
return transferUsers.count
}
, чтобы получить только список выбранных пользователей, поскольку у вас есть словарь, вы должны сделать это так:
transferUsers.values