[Swift 2] Visa flera raders text cell?
Tja!
Håller på & gör en Flappy Bird (är riktigt färsk när det kommer till iOS utveckling) kopia till barnen i släkten inför julen & har stött på ett problem, eller ja, en massa problem.
Jag har fått allt att fungera som det skall, sprites som animeras & fysiken för fågeln osv osv & är inne på slutspurten nu.
Det ENDA jag vill göra är att vissa lite text som visar highscoren för alla spelare men Apple verkar fullkomligt hata folk som vill visa lite text, iaf för mig.
Detta är vad jag vill åstadkomma http://i.imgur.com/riYNZHG.jpg (ignorera all text förutom #1, #2, #3, det är den texten jag vill implementera)
Vad jag testat:
UILabel
Fungerar relativt bra men gör jag en label som är 300x400 så centreras texten vertikalt, Googlade som fasen, men fick inte till någon bra lösning där texten börjar i topp & radas neråt samtidigt som allt är centrerat horisontellt, sizeToFit verkar inte gå att implementera allt för lätt
SKLabel
Njaaa? Verkade inte gå att få till radbrytningar? Tolkar varken radbrytning från JSON med \n eller manuell \n
UITextView
Skitbra tänkte jag, här har vi något som jag bara kan dumpa in lite text i men nja, denna verkar snarare endast vara för text som användaren kan peta på, även med editable = false så går det ändå marker, kopiera & klippa & klistra
Såhär ser koden ut för det jag har
let label:UITextView = UITextView(frame: CGRectMake(view.frame.size.width / 2, view.frame.size.height / 2, view.frame.size.width, 400));
label.backgroundColor = UIColor(red: 255, green: 0, blue: 0, alpha: 1)
label.font = UIFont(name: "Arial", size: 20)
label.text = "#1 Jesper (32)\n#2 Jonny (12)\n#3 Ingrid (5)";
label.textColor = UIColor(red: 255, green: 255, blue: 255, alpha: 1)
label.editable = false
label.sizeToFit()
self.view!.addSubview(label);
UITextView resulterade i (säg till om bilderna är för stora):
Detta är NÄSTAN så som jag vill ha det när det gäller placering & text, fast skulle vilja ha lite större line-height men min Googling failade mig där med. Dessutom skulle jag vilja få rutan placerad absolut i mitten oavsett hur brett innehållet är, view.frame.size.width / 2 - (self.frame.size.width / 2) fungerade inte. Jag kan lösa centreringen genom att göra rutan like bred som skärmen, enkel fix men är inte det jag är ute efter nu för vill ändå ha texten relativt i mitten utan att texten i sig är centrerad, kanske kan göra multipla UITextView och placera dom i varandra, men lite stökigt.
Detta verkar vara omöjligt att implementera I en SKScene
Jag vill INTE skicka spelaren till en ny view, jag vill visa highscoren direkt när man "dör". UITextView tar dessutom över scenen, just nu börjar man om spelet genom att tappa på skärmen efter man dött, men klickar man på UITextView rutan så registrerar inte "klicket".
Så ja, jag vill BARA visa lite text från JSON data jag hämtar från min webbserver, så att summera:
En textruta som kan:
Visa flera rader text
Där jag kan bestämma rad höjden
Rutan skall helst kunna köra sizeToFit så den anpassas efter innehållet
Den skall INTE vara klickbar, touchesBegan skall ALLTID vara "överst" i scenen
Så japp, någon som kan peka mig åt rätt håll?
Hur kan syltkakor överleva i det vilda utan ögon?