Хранение String и Int в словаре в swift - PullRequest
0 голосов
/ 12 июня 2018

Я почти новичок в Swift. В этом URL я получу некоторый элемент;одним из элементов является categoryList, который сам имеет два элемента.Я установил goodTypeName в качестве заголовка ячейки таблицы, и при нажатии на ячейку необходимо отправить goodType с номером (Int) для размещения в следующем URL-адресе.Я попытался создать словарь, но мне не удалось!

Код UiTable :::

override func numberOfSections(in tableView: UITableView) -> Int {
    return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return Global.GlobalVariable.names.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    if Global.GlobalVariable.names == []
    {
        self.DisplayMessage(UserMessage: "nothing is available ")
        print("server is nil")
    }
    let cell = UITableViewCell()
    let content = Global.GlobalVariable.names[indexPath.row]
    cell.textLabel?.text = content
    cell.accessoryType = .disclosureIndicator
    return cell
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    print(indexPath.item)
    let next = self.storyboard?.instantiateViewController(withIdentifier: "SVC")
    self.navigationController?.pushViewController(next!, animated: true)
}

Моя проблема не в том, чтобы заполнить их в таблице, моя проблема в том, что ячейка выбрана,goodtype необходимо отправить на следующую страницу, потому что URL следующей страницы должен иметь код goodtype.

1 Ответ

0 голосов
/ 12 июня 2018

Вы можете использовать «prepareSegue» для передачи данных.

переопределить функцию func prepare (для перехода: UIStoryboardSegue, sender: Any?) {

if segue.identifier == "something"{
    if let startViewController = segue.destination as? StartViewController{
        startViewController.goodtype = Global.GlobalVariable.goodtype[indexPath.row]
    }
}
}

А в вашем StartViewController просто назначьтепеременная для получения ваших данных:

var goodtype = String()

Или используйте контроллер навигации, но с помощью этой строки вы можете получить доступ к другому свойству контроллера представления.

         if let startViewController = storyboard.instantiateViewController(withIdentifier: "StartViewController") as? StartViewController {
    startViewController.goodtype = Global.GlobalVariable.goodtype[indexPath.row]
     let navigationController = UINavigationController()
  navigationController.pushViewController(startViewController, animated: true)
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...