Получить данные из переменной внутри структуры в другом классе Swift - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь получить данные из переменных внутри этой структуры для моих ячеек UITableView

struct Issue {
 var id: String
 var tester: String
 var type: issueType
 var title: String
 var appName: String
 var desc: String
 var date: Date

 static func type(_ item: issueType) -> String {
     if item == .major {
         return "major"
     }
     else if item == .blocker {
         return "blocker"
     }
     else if item == .minor {
         return "minor"
     }
     return ""
 }
}

Но каждый раз, когда я пытаюсь получить данные для своей метки, они не отображаются.Вот код из моего viewController

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: identifier, for: indexPath)

    let item = array[indexPath.row]

    let topLine = cell.viewWithTag(1)
    let labelStatus = cell.viewWithTag(2) as! UILabel
    let labelTester = cell.viewWithTag(3) as! UILabel
    let labelTitle = cell.viewWithTag(4) as! UILabel
    let labelAppName = cell.viewWithTag(5) as! UILabel
    let labelDesc = cell.viewWithTag(6) as! UILabel
    let labelDate = cell.viewWithTag(7) as! UILabel
    let labelId = cell.viewWithTag(8) as! UILabel

    labelStatus.text = Issue.type(item.type).capitalized
    labelTester.text = Issue.tester

    return cell

}

PS Текст labelStatus отлично работает

1 Ответ

0 голосов
/ 17 декабря 2018

Установка текста labelStatus работает, потому что вы вызываете статическую функцию для типа Issue, и эта функция возвращает String.Во втором случае вы пытаетесь получить свойство типа struct, а не определенного item.

Использовать свойство item

labelTester.text = item.tester
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...