Как добавить новую строку для каждого цикла в Swift? - PullRequest
0 голосов
/ 05 ноября 2019

Я хочу добавить новую строку между строками из цикла. Я хочу добавить новую строку между ключевым элементом и значениями. Я пытался с приведенным ниже кодом, но это не произошло.

Ожидаемый результат:

  Name
  Devan

  Dept
  Apple

  Domain
  iOS

код:

    let dict = convertToDictionary(text : jsonString)
    if let dictData = dict {
        for index in 0..<contentArray.count
        {
            let data = contentArray[index]
            let (key, value) = getKeyAndValue(contentData : dictData , keyElement : data)
            content += "\r\n \(key) \r\n \(value)"
            textView.attributedText = content.htmlToAttributedString
        }
    }

Ответы [ 3 ]

0 голосов
/ 05 ноября 2019

попробуй вот так

for index in 0..<contentArray.count{
   let data = contentArray[index]
   let (key, value) = getKeyAndValue(contentData : dictData , keyElement : data)
   content.append("\(key) \n \(value) \n\n")
   textView.attributedText = content.htmlToAttributedString
}
0 голосов
/ 05 ноября 2019

Простое решение:

var dict = ["Name":"Deven","Dept":"Apple","Domain":"iOS"]

for (index, entry) in dict {
    print(index)   // Name       Dept        Domain
    print(entry)
    print("\n")// Deven    Apple    iOS
}
0 голосов
/ 05 ноября 2019

Вы можете просто использовать reduce(_:_:) на dictionary, чтобы получить требуемый результат.

let dict = ["Name":"Devan", "Dept":"Apple", "Domain":"iOS"]
let contentArray = ["Name", "Dept", "Domain"]

var str = contentArray.reduce("") { (result, key) -> String in
    if let value = dict[key] {
        return result + key + "\n" + value + "\n\n"
    }
    return result
}

print(str)
...