Pomoč pri XCODE | |||||
Kaj vse si že probal? Kakšni so bili rezultati? Kaj si se iz njih naučil? Načinov je več... vse pa zavisi od tega, kako si v štartu zastavil celoten koncept, in kaj točno želiš doseči. Načeloma bi se moral text spremeniti na ta način kot pišeš... seveda pa obstajajo situacije, kjer to ne pomaga. |
|||||
Ker mi niti prva ne spremeni texta, je druga metoda nepomembna, ker bi morala prebrati pravilen text, ki pa ga se ne znam spremeniti. V header file imam: IBOutlet UISwitch *mySwitch; IBOutlet UIButton *myButton; -(void) swipeSwitch; V implementation file pa: -(void) swipeSwitch { if([mySwitch.on]) { myButton.titleLabel.text = @"text1"; } else { myButton.titleLabel.text = @"text2"; } } Verejtno imam nekako napacne povezave iz view v controller. |
|||||
|
|||||
[mySwitch addTarget:self action:@selector(swipeSwitch) forControlEvents:UIControlEventValueChanged]; |
|||||
Ali delaš vse programsko (kot dodajanje akcije)? Ker načeloma bi tudi akcijo za valueChanged lahko nastavil preko IBAction-a in interface builderja. Če IBOutletov nisi povezal, potem sta pointerja mySwitch in myButton oba "nil" in logično, da nič ne dela... Če pa imaš vse pravilno povezano, je pa treba iskati napako drugje... pomagaj si z izpisovanjem logov v konzolo NSLog(@"tekst za log"); |
|||||
za value changed, sem imel napisano programsko, zato ker sem tako nasel v enem turtorialu. Bom poskusil ze s konzolo resit tezavo, ali pa mehasko povezati IBAction. Smesno mi je, da se mi je ze pri dokaj trivialnem primeru zataknilo. Hvala ti za pomoc, ker zdaj vsaj vem da sem na pravi poti. |
|||||
mySwitch.alpha = 0; myButton.alpha = 0; Če bosta oba nevidna, veš, da sta pravilno povezana. Potem lahko v metodi namesto spreminjanja teksta probaš spreminjati alpho gumba (na 1 za vidnega in 0 nevidnega). Izpisuj loge v metodi za spreminjanje vrednosti switcha, da vidiš, če se sploh kliče. Akcijo si pravilno dodal... in če je switch pravilno povezan, bi stvar morala delovati (in izpisovati log). Potem bomo pa videli, kako naprej... |
|||||
ali pa je button narobe povezan, ampak verjetno se vidi iz slike da sem povezal pravilno. EDIT 1:Aha, alpha ga skrije, tako da je verjetno napacno zapisan stavek za spremembo texta. EDIT 2: Sem cisto za foro v gumb vpisal za default title eno crko. In je zacelo delat. Pred tem sem pa pac pustil, da je bil gumb prazen, oz ni bilo za default title nic nastavljeno, pa ni potegnilo. Tudi ce sedaj odstranim title, mi spet ne deluje. A je mozno, da title ne sme biti prazen? Hvala za pomoc pri iskanju napake. |
|||||
if (myButton.titleLabel == nil) NSLog(@"labela ne obstaja"); Če bi uporabljal metodo za UIButton -setTitle:forState:, bi se verjetno labela avtomatično ustvarila. |
|||||
|
|||||
Na dveh računalnikih uporabljam XCode 4.2, včeraj na tretjem namestil verzijo iz App Stora - seveda 4.3. Za znoret. Vse okol obrnjeno. Še iOS Simulator sem iskal kot da bi bil prvič za macom... Mogoče kot opozorilo ostalim. |
|||||
|
|||||
|
|||||
|
|||||
|
|||||
Da in da. Glede na to, da UIImageView ustreza NSCoding protokolu, lahko uporabiš kar "copy" metodo, da ustvariš novo (identično) instanco image viewa... |
|||||
UIImageView *copyImage = [bombView copy]; [mArray insertObject: copyImage atIndex:i]; |
|||||
Moja napaka... sem mislil, da je NSCoding isto kot NSCopying. Boš moral kar vsak UIImageView na novo ustvariti, ker kopiranja ne podpira. |
|||||
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImageView copyWithZone:]: unrecognized selector sent to instance 0x183980' Drugace sem v teji metodi dal primer le z tremi slicicami, rabil jih bom pa 15, zato sem se lotil zadeve takole. |
|||||
Torej v main viewu imam 12 subviewov, ki se ne prikrivajo. Potem pa sem zelel da se tisti subview, katerega tapknem spremeni. Spomnil sem se na predavanje iz stanforda in tam so uporabili takle for stavek. for(UIView *view in [self.view subviews]) { if (CGRectContainsPoint(view.frame, location)) { bla bla } } In sedaj ne vem kako tocno to deluje. Sicer mi je zadeva deluje in mi res najde pravi subview, samo ne razumem kako pride do pravega subviewa. Pogoj za if stavek razumem, ker sem ga ze uporabljal, ne vem pa kako za vraga deluje tisti pogoj v for stavku. Ce mi zna kdo tocno povedat, kako deluje tole: UIView *view in [self.view subviews] Hvala ze vnaprej. |
|||||
« Poglej prejšnjo temo - Razvoj programske opreme - Poglej naslednjo temo » | Pojdi na stran Prejšnja 1, 2, 3 Naslednja |
Gostovanje: 3fs.si |
Vsa vsebina spletne strani je last Jabuk.si in njegovih članov. © 2004 - 2020 Jabuk.si | Kontakt Domov Na vrh strani |