2015-09-17 13 views
7

Właśnie zaktualizowałem z wersji 1.2 do 2. Otrzymuję tablicę 'jest niedostępna: proszę skonstruuj tablicę z leniwej sekwencji: Array (...) i nie wydaje się owinąć wokół moje światło, jak rozwiązać tenjest niedostępna: proszę skonstruować tablicę z leniwej sekwencji: Array (...)

MyVariables.selectedUser = MyVariables.dictionary.keys.array[indexPath.row] as String 

Co należy „MyVariables.dictionary.keys.array [indexPath.row] jako ciąg” być zmienione?

Odpowiedz

10

Mówi się, że właściwość array w powolnej sekwencji zwróconej przez keys nie jest już dostępna. W Swift 2, należy użyć inicjator przekonwertować leniwy sekwencję do tablicy:

MyVariables.selectedUser = Array(MyVariables.dictionary.keys)[indexPath.row] as String 
+1

OBROBIONE !! !!! Bardzo Ci dziękuję –

1

w Swift1.2 wartości w Słowniku zwraca LazyForwardCollection> typ, który ma własność .array powracającego tablicy.

W Swift2 wartości zwracane przez słownik LazyMapCollection < [Klucz: Wartość], Wartość>, a właściwość .array jest porzucana, ponieważ możemy skonstruować Array with Array (wartości dyktafonu).

W tym przypadku można użyć tych linii

** niech array = array (arrayLiteral: myVariable .keys)

var selectedUser = [indexPath.row] **

Powiązane problemy