Ответы пользователя по тегу iOS
  • Есть те кто проходил вебинары от swiftbook?

    По поводу Swift Book Кратко, курсы там хорошие, спору нет, многому научат, после них если еще немного где-то себя подтянуть и поделать уже свои приложения, можно и вправду пойти и уже устроиться на работу. По поводу вебинаров - опять же. Поможет лучше понять ту или иную ветку или какой нибудь один аспект, если интересно к примеру про кор дату какую нибудь понять получше - да, на них поймешь, хотя и вебинары бывают УЖААААСНО скучные и долгие, и то что рассказывают 4 часа можно рассказать за 40 минут. Но в целом информация там хорошая.
    Ответ написан
    Комментировать
  • Как добавить кнопку на определенный view controller через код?

    Если я все правильно понял, вам нужна передача данных между контроллерами с помощью segue.
    Создаем в классе второго контроллера переменную, в которую будет передавать нужное значение.
    Далее создаем кнопку на первом контроллере и перетаскиваем сегвей от кнопки до второго контроллера. и указываем его идентификатор.

    Ниже код для второго контроллера. Просто Лейбл, и в свойство "text" этого лейбла присваиваем значение переменной "name".
    class SecondViewController: UIViewController {
    
        var name = ""
        
        @IBOutlet var username: UILabel!
        
        override func viewDidLoad() {
            super.viewDidLoad()
            
            username.text = name
        }
    }


    Вот тут код первого контроллера с помощью метода prepare(for segue: ) мы получаем доступ к тому контроллеру, на который и переходим через этот сегвей. Получить доступ можно через destination. Далее передаем имя в нашу переменную, которую мы создали в классе второго контроллера, например Андрей. И этот метот сработает перед переходом на второй контроллер, и передаст "Вася" в нашу переменную "name", при запуске второго контроллера лейбл возьмет значение из этой переменной и заполнит свое свойство "text"
    class FirstViewController: UIViewController {
    
        override func viewDidLoad() {
            super.viewDidLoad()
        }
    
        override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
            guard segue.identifier == "YourIdentificator" else { return }
            guard let destination = segue.destination as? SecondViewController else { return }
            destination.name = "Вася"
        }
    }
    Ответ написан
    4 комментария