Kart adı verilen bir yapıda var ve bir kart destesi oluşturması gereken bir işlev oluşturdum. SO üzerinde kart destesi oluşturma konusunda birkaç konu buldum ama bunlar Objective-C'de ya da yapmaya çalışmıyorum enums kullanarak sıralar ve takımlar atayarak.Kartların bir destesinde Kartın her örneğine değer atama
Ben dizeleri bu dizi var:
let fibonacciSeries = ["0", "1", "2", "3", "5", "8", "13", "21", "34", "55", "89", "144", "∞"]
ve benim createDeck işlevi bu değerleri kullanarak bir deste kart oluşturmak istiyorum: Böyle diyoruz
struct Card {
var name = String()
func createDeck(series: [String]) -> [Card] {
var deck = [Card]()
for value in series {
deck.append(Card(name: value))
print("The card name is \(self.name)")
}
return deck
}
}
:
let myDeck = Card().createDeck(fibonacciSeries)
name özelliği, print() çağrısıyla görebileceğim her kart için boş (veya boş) bir özelliktir.
böyle benim adım özelliğini değiştirerek çalıştı:var name = ""
Ama yine boş konum.
Biraz daha araştırdım ve bunu bir değer verirseniz bu katma yüzden bir in başlatıcısı buna varsayılan bir değer vermeden bir özellik oluşturabilir öğrendim:init(name: String) {
self.name = name
}
Yine Xcode çünkü hiçbir sevinç bana I hatırlatıyor Kart() çağrısında isim için bir değer iletmesi gerekir ve bunu yaptığımda, tüm kartlar girdiğim değer olarak adlandırılır.
Sonuç olarak, bu kartı bir UICollectionView içine koymak ve bu değerleri görmek istiyorum ama Bu özellikte bir daireye yakalanmış gibi görünüyorum ve dışarı çıkamıyorum.
Burada birkaç konuya bakıyorum ve bulabildiğim hiçbiri bir cevap vermedi.
Herhangi bir yardım büyük beğeni topladı.
Kişisel 'name' özellik aslında olmamalı boş, baskı ifadeniz yanlış. Yöntemi çağırdığınız değil, yöntemi çağırdığınız 'Card' örneğinin adını yazdırıyorsunuz. – dan