• Как передать данные между 2-мя отдалёнными VC?

    @alex_643 Автор вопроса
    Иван Воробей, а делегирование использовать в обратном направлениии или без разницы?
    Написано
  • Как передать данные между 2-мя отдалёнными VC?

    @alex_643 Автор вопроса
    Я попробовал делегаты, но данные не передаются. Посмотрите пожалуйста что не так?
    //
    //  newgood.swift
    //  Deliment
    //
    //  Created by Alex on 19.07.2020.
    //
    
    import UIKit
    
    class newgood: UITableViewController, UITextFieldDelegate {
        @IBOutlet weak var goodName: UITextField!
        @IBOutlet weak var goodPrice: UITextField!
        @IBOutlet weak var senders: UIBarButtonItem!
        weak var delegate: goodsDelegate?
        weak var delegateOne: choosegoodsDelegate?
        var goodarr: [String: [String?]] = ["name": [], "price": []]
        
        override func viewDidLoad() {
            super.viewDidLoad()
            goodName.delegate = self
            senders.isEnabled = false
        }
        
        @IBAction func newGood() {
            if goodName.text == "" || goodPrice.text == ""{
                senders.isEnabled = false
            }
            else{
                goodarr["name"]!.append(goodName.text!)
                goodarr["price"]!.append(goodPrice.text!)
                delegate?.update(name: goodName.text!, price: goodPrice.text!)
                delegateOne?.update(name: goodName.text!, price: goodPrice.text!)
                self.dismiss(animated: true, completion: nil)
            }
        }
        
        @IBAction func anydo(_ sender: Any) {
            if goodName.text == "" || goodPrice.text == ""{
                senders.isEnabled = false
            }
            else{
                senders.isEnabled = true
            }
        }
        
        override func numberOfSections(in tableView: UITableView) -> Int {
            return 1
        }
    
        override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
            return 2
        }
        
        func textFieldShouldReturn(_ textField: UITextField) -> Bool {
            goodName.resignFirstResponder()
            return false
          }
    }

    //
    //  choosegoods.swift
    //  Deliment
    //
    //  Created by Alex on 19.07.2020.
    //
    
    import UIKit
    
    protocol choosegoodsDelegate: class {
        func update(name: String, price: String)
    }
    
    class choosegoods: UITableViewController, goodsDelegate {
        var names: [String?] = []
        var prices: [String?] = []
        @IBOutlet var choosegoodsTable: UITableView!
        
        override func viewDidLoad() {
            super.viewDidLoad()
            self.choosegoodsTable.register(UITableViewCell.self, forCellReuseIdentifier: "goodCell")
        }
        
        override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
            guard let destination = segue.destination as? newgood else { return }
            destination.delegate = self
        }
        
        func update(name: String, price: String) {
            print(1)
            names.append(name)
            temp.append(price + " ₽")
            choosegoodsTable.reloadData()
        }
        
        override func numberOfSections(in tableView: UITableView) -> Int {
            return 1
        }
    
        override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
            return names.count
        }
        
        override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
            let cell = choosegoodsTable.dequeueReusableCell(withIdentifier: "goodCell", for: indexPath)
            cell.textLabel?.text = names[indexPath.row]
            return cell
        }
    }
    Написано
  • Как передать данные между 2-мя отдалёнными VC?

    @alex_643 Автор вопроса
    Мне нужно передать массив данных.
    Написано
  • Почему не работает передача данных между VC в обратном направлении при нажатии на Bar button item?

    @alex_643 Автор вопроса
    Возникла еще одна проблема, в приложении при переходе обратно на 1 vc должна появляется новая ячейка, (Table View Cell) но у меня ничего не появляется. Нужно ли обновлять как то эти ячейки, если да то как?
    Написано
  • Почему не работает передача данных между VC в обратном направлении при нажатии на Bar button item?

    @alex_643 Автор вопроса
    Попробовал всё получилось. Единственное я хочу что бы я мог перейти на первый контроллер при помощи кнопки на SecondVC. Не подскажите как это сделать?
    Написано
  • Эффективный алгоритм нахождения k-того простого числа?

    @alex_643 Автор вопроса
    У меня есть алгоритм, но я не знаю как его применить под мою ситуацию. Ведь мне нужно найти определенное по счету простое число, а в алгоритме нужно число до которого будут находится простые числа.
    Написано
  • Как разбить число на слагаемые?

    @alex_643 Автор вопроса
    Суперчисла

    Суперчислом называется число, являющееся суммой двух простых чисел из диапазона [2…]
    [
    2

    B
    ]
    . Требуется найти все суперчисла из заданного диапазона […]
    [
    A

    B
    ]
    .

    Входные данные

    Во входном файле даны два числа
    A
    и
    B
    (2≤≤≤10000
    2

    A

    B

    10000
    ), определяющие диапазон […]
    [
    A

    B
    ]
    .

    Выходные данные

    В выходной файл вывести все найденные суперчисла из заданного диапазона в возрастающем порядке.

    Примеры
    Ввод
    Вывод
    3 10
    4
    5
    6
    7
    8
    9
    10
    как это можно применить к данной задаче?
    Написано
  • Нахождение делителей числа?

    @alex_643 Автор вопроса
    Матвей Истомин, по времени
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    briahas, когда нажимаю на плюсик на первом VC
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    Thread 1: Exception: "-[UIButton identifier]: unrecognized selector sent to instance 0x131d26010"
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    import UIKit
    
    class MainVC: UIViewController {
        @IBAction func saveData(_ unwindSegue: UIStoryboardSegue) {
               guard unwindSegue.identifier == "passDataToFirstVC" else {
                   return
               }
            guard unwindSegue.source is NewListVC else { return }
           }
        override func viewDidLoad() {
            super.viewDidLoad()
        }
    }

    //
    //  NewListVC.swift
    //  application
    //
    //  Created by Alex on 03.06.2020.
    //  Copyright © 2020 alex. All rights reserved.
    //
    
    import UIKit
    
    class NewListVC: UIViewController {
        @IBOutlet weak var segmented_control: UISegmentedControl!
        @IBOutlet weak var segmentedControl_1: UISegmentedControl!
        @IBOutlet weak var imageView: UIImageView!
        @IBOutlet weak var new_list_field: UITextField!
        @IBOutlet weak var result_label: UILabel!
        @IBOutlet weak var next_button: UIButton!
        override func viewDidLoad() {
            super.viewDidLoad()
            next_button.layer.cornerRadius = 10
            result_label.layer.cornerRadius = 10
            new_list_field.layer.cornerRadius = 10
            new_list_field.delegate = self
        }
        override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
            print("qwewqe")
        }
        @IBAction func selected_image(_ sender: Any) {
            switch segmentedControl_1.selectedSegmentIndex {
            case 0:
                imageView.image = UIImage(named: "list.dash")
            case 1:
                imageView.image = UIImage(named: "bag.fill")
            case 2:
                imageView.image = UIImage(named: "briefcase.fill")
            case 3:
                imageView.image = UIImage(named: "hammer.fill")
            case 4:
                imageView.image = UIImage(named: "creditcard.fill")
            default:
                break
            }
        }
        @IBAction func selected_color(_ sender: Any) {
            switch segmented_control.selectedSegmentIndex {
            case 0: result_label.backgroundColor = UIColor(red: 88/255, green: 86/255, blue: 214/255, alpha: 1.0)
            case 1: result_label.backgroundColor = UIColor(red: 255/255, green: 149/255, blue: 0/255, alpha: 1.0)
            case 2: result_label.backgroundColor = UIColor(red: 255/255, green: 44/255, blue: 85/255, alpha: 1.0)
            case 3: result_label.backgroundColor = UIColor(red: 175/255, green: 82/255, blue: 222/255, alpha: 1.0)
            case 4: result_label.backgroundColor = UIColor(red: 255/255, green: 183/255, blue: 0/255, alpha: 1.0)
            default:
                break
            }
        }
    }
    extension NewListVC: UITextFieldDelegate {
        func textFieldShouldReturn(_ textField: UITextField) -> Bool {
            textField.resignFirstResponder()
            result_label.text = new_list_field.text
            return true
            }
        }

    2020-06-05 20:58:01.885210+0300 application[9858:2649638] -[UIButton identifier]: unrecognized selector sent to instance 0x131d26010
    2020-06-05 20:58:01.887664+0300 application[9858:2649638] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIButton identifier]: unrecognized selector sent to instance 0x131d26010'
    *** First throw call stack:
    (0x1b1c955f0 0x1b19b7bcc 0x1b1b99ea8 0x1b5d6e8d8 0x1b1c99694 0x1b1c9b5bc 0x102f11f9c 0x102f12198 0x1b5d41574 0x1b5754278 0x1b57545d0 0x1b57535f4 0x1b5d7b250 0x1b5d7ca18 0x1b5d586a0 0x1b5dd8d84 0x1b5ddb8bc 0x1b5dd38d0 0x1b1c13b64 0x1b1c13abc 0x1b1c13244 0x1b1c0e274 0x1b1c0dc34 0x1bbd5738c 0x1b5d4022c 0x102f177ec 0x1b1a95800)
    libc++abi.dylib: terminating with uncaught exception of type NSException
    (lldb)
    пробую этот код выводит ошибку
    и это
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    Мне просто нужна передача данных между VC в обратном направлении
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    вот сториборд
    5eda85443532d362245411.png
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    2 VC
    //
    // NewListVC.swift
    // application
    //
    // Created by Alex on 03.06.2020.
    // Copyright © 2020 alex. All rights reserved.
    //

    import UIKit
    import SwiftUI
    class NewListVC: UIViewController {
    @IBOutlet weak var segmented_control: UISegmentedControl!
    @IBOutlet weak var segmentedControl_1: UISegmentedControl!
    @IBOutlet weak var imageView: UIImageView!
    @IBOutlet weak var new_list_field: UITextField!
    @IBOutlet weak var result_label: UILabel!
    @IBOutlet weak var next_button: UIButton!
    override func viewDidLoad() {
    super.viewDidLoad()
    next_button.layer.cornerRadius = 10
    result_label.layer.cornerRadius = 10
    new_list_field.layer.cornerRadius = 10
    new_list_field.delegate = self
    }
    @IBAction func selected_image(_ sender: Any) {
    switch segmentedControl_1.selectedSegmentIndex {
    case 0:
    imageView.image = UIImage(named: "list.dash")
    case 1:
    imageView.image = UIImage(named: "bag.fill")
    case 2:
    imageView.image = UIImage(named: "briefcase.fill")
    case 3:
    imageView.image = UIImage(named: "hammer.fill")
    case 4:
    imageView.image = UIImage(named: "creditcard.fill")
    default:
    break
    }
    }
    @IBAction func selected_color(_ sender: Any) {
    switch segmented_control.selectedSegmentIndex {
    case 0: result_label.backgroundColor = UIColor(red: 88/255, green: 86/255, blue: 214/255, alpha: 1.0)
    case 1: result_label.backgroundColor = UIColor(red: 255/255, green: 149/255, blue: 0/255, alpha: 1.0)
    case 2: result_label.backgroundColor = UIColor(red: 255/255, green: 44/255, blue: 85/255, alpha: 1.0)
    case 3: result_label.backgroundColor = UIColor(red: 175/255, green: 82/255, blue: 222/255, alpha: 1.0)
    case 4: result_label.backgroundColor = UIColor(red: 255/255, green: 183/255, blue: 0/255, alpha: 1.0)
    default:
    break
    }
    }
    }
    extension NewListVC: UITextFieldDelegate {
    func textFieldShouldReturn(_ textField: UITextField) -> Bool {
    textField.resignFirstResponder()
    result_label.text = new_list_field.text
    return true
    }
    }
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    1 VC

    //
    // MainVC.swift
    // application
    //
    // Created by Alex on 02.06.2020.
    // Copyright © 2020 alex. All rights reserved.
    //

    import UIKit

    class MainVC: UIViewController {
    override func viewDidLoad() {
    super.viewDidLoad()
    }
    }
    Написано
  • Передача данных между VC обратно?

    @alex_643 Автор вопроса
    briahas, да именно. Мне нужно применить приведенные релизации к моему случаю
    Написано