Size: a a a

2021 January 10

S

Shakhzod in SwiftBook
Василий
будет вылет. out of bounds.
на строке где объявляется destinationPlacemark
+
источник

G

Georgy in SwiftBook
там количество индексов == количество элементов, откуда вылет?
источник

В

Василий in SwiftBook
индекс начинается с 0 :)
источник

G

Georgy in SwiftBook
я в курсе
источник

В

Василий in SwiftBook
счетчик элементов с 1
источник

G

Georgy in SwiftBook
нет
источник

В

Василий in SwiftBook
окей, напиши пример без проверки.
источник

G

Georgy in SwiftBook
источник

В

Василий in SwiftBook
и? :)
источник

G

Georgy in SwiftBook
где там может быть вылет за пределы-то, я не могу понять..
источник

S

Shakhzod in SwiftBook
смотри тут destinationPlacemark = MKPlacemark(coordinate: locations[index + 1], addressDictionary: nil) берется след элемент, когда цикл проходит через последную точку, destination получается out of bounds
источник

В

Василий in SwiftBook
добавь еще строчку print("\(array[index +1 ]) ")
источник

G

Georgy in SwiftBook
так зачем там делать +1?? Если у тебя массив точек назначения, то не надо плюсовать
источник

G

Georgy in SwiftBook
если тебе от первой точки в массиве строить, то проще тогда дропнуть первый элемент
источник

S

Shakhzod in SwiftBook
Shakhzod
for (index, location) in locations.enumerated(){
           
if index != locations.count - 1{
       
       
let sourcePlacemark = MKPlacemark(coordinate: location, addressDictionary: nil)
       
let destinationPlacemark = MKPlacemark(coordinate: locations[index + 1], addressDictionary: nil)

               
       
let sourceMapItem = MKMapItem(placemark: sourcePlacemark)
       
let destinationMapItem = MKMapItem(placemark: destinationPlacemark)
       
let directionRequest = MKDirections.Request()
     
       directionRequest.source = sourceMapItem
       directionRequest.destination = destinationMapItem
. }
тут source и destination , source берет первый элемент , destination след) в итоге когда проходит по последнему item, source будет последний item , destination = out of bounds
источник

FI

Farrukh Ismailov in SwiftBook
Привет всем, подскажите как сделать вот такую кнопку в tabBar?
источник

В

Василий in SwiftBook
ну вот вариант без плюсования индекса

var sourceLocation: LocationAnnpotation?
       
       for  currentLocation in annotations {
           guard let source = sourceLocation else {
               sourceLocation = currentLocation
               continue
           }
           
           self.generateRoute(pointOne: source.coordinate, pointTwo: currentLocation.coordinate)
           sourceLocation = currentLocation
           
       }
источник

В

Василий in SwiftBook
генерация вынесена отдельно, нафиг она тут не нужна просто
источник

G

Georgy in SwiftBook
не, там исходная задача-то была от позиции пользователя до разных точек, а не последовательно между точками в массиве.. ну, и даже последовательно между точками, то енумерация сложнее выглядит (на мой взгляд).. тогда уж так
источник

В

Василий in SwiftBook
исходная да, но он выложил код-то с последовательной
источник