Как обновить метку, которая получает значение из array.count? - PullRequest
0 голосов
/ 31 октября 2019

Итак, у меня есть карта с аннотациями, которые представляют стенды. У каждого стенда есть список велосипедов. Я хочу показать стенд с велосипедами в нем. В настоящее время происходит то, что аннотация evert показывает значения bikes.count для каждого стенда и должна отображать его только для одного стенда - стенда, который он представляет на карте.

Вот мой код:

let queue = DispatchQueue(label: "update")

    queue.async {

        var available = ""
        var nrOfAvailable = ""
        for s in self.fietshare.stands{
            for b in s.bikes {
                available = available + "id:" + String(s.id) +  "Nr:" + String( s.bikes.count) // shows too big numbers
                nrOfAvailable = String(b.distance) + "M"

                print(s.id)
                print("Nr of bikes")
                print(s.bikes.count)
            }
        }

        // UPDATE UI after all calculations have been done
        DispatchQueue.main.async {
            lbAvailable.text = available
            nrOfAvailables.text = nrOfAvailable
          //  annotationView.layoutIfNeeded()

         //   self.view.backgroundColor = . black;
         //   self.view.layoutIfNeeded()
        }

    }

1 Ответ

0 голосов
/ 31 октября 2019

Переменная available объявляется вне массива и суммирует все доступные значения в массиве. Поэтому вам нужно получить значение данного стенда, пока вы обновляете lblAvailable.

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