strings voor meerdere subViews gebruiken? discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Ik ben sinds een korte tijd aan het 'programmeren' voor de iphone. Ik heb wat handleidingen e.d. gevolgd, en probeer door te programmeren meer te ...
|
Registreer | FAQ | Ledenlijst | Kalender | Zoeken | Berichten van vandaag | Markeer forums als gelezen |
#1
|
|||
|
|||
strings voor meerdere subViews gebruiken?
Ik ben sinds een korte tijd aan het 'programmeren' voor de iphone. Ik heb wat handleidingen e.d. gevolgd, en probeer door te programmeren meer te leren (door te zoeken, te proberen en zoals nu op forums te vragen naar antwoorden)
Ik ben bezig met een applicatie waarbij ik een homescherm heb en vanuit daar een keuze maak, dan naar een andere subview ga en dan weer een keuze maak, dan weer naar een nieuwe subview waar de gegevens verschijnen die ik gekozen heb. De opties die ik kies defineer ik in een variabel. Deze variabel blijft echter in die view. Is het mogelijk om variabelen globaal te maken of op de een of andere manier weer te kunnen opvragen in een nieuwe view? Heel erg bedankt alvast, kan er echt niet uit komen! |
|
|
Gesponsorde links (verdwijnt na registratie)
|
#2
|
||||
|
||||
Die variabele moet je doorgeven aan de nieuwe viewcontroller. In dit voorbeeld heeft mijn LoginViewController een property 'servers'. In mijn ServerViewController wil ik deze ook kunnen accessen.
Code:
ServerViewController *serverViewController = [[ServerViewController alloc] initWithNibName:@"ServerView" bundle:nil]; serverViewController.servers = servers; // Het gaat hierom [self.navigationController pushViewController:serverViewController animated:YES]; [serverViewController release]; |
#3
|
|||
|
|||
Eh, ja maar ik verander alleen maar van subview, de viewcontroller doe ik niks mee als het goed is toch?
Edit: Ik betwijfel of ik wel eens gebruik maak van een viewcontroller, of is dat onmogelijk? Laatst gewijzigd door cygnusx; 17-08-09 om 22:19. |
#4
|
|||
|
|||
zou je wellicht (als ik niet te veel vraag ) een voorbeeldprojectje kunnen sturen waarin je een variabel over 2 views gebruikt?
Ik heb het idee dat ik een beetje op de verkeerde fundering aan het werk ben... |
#5
|
||||
|
||||
Dat kan in feite maar dan ben je (naar mijn mening) niet goed bezig. UIView subclasses kunnen ook properties hebben. Deze kan je dan ook gewoon setten.
Edit: Ik kijk er eens voor als ik tijd heb. Stuur nu vanaf iPhone en heb morgen niet veel tijd. Laatst gewijzigd door SkyTrix; 17-08-09 om 22:29. |
#6
|
|||
|
|||
Ok, ik blijk dus toch wel een werkende viewcontroller te hebben. Na wat puzzelen, proberen, hulp met jouw stukje code en uiteindelijk goed linken enzo is het gelukt. Variabelen werken nu op meerdere views
Thanx. Een probleempje echter, de situatie is als volgt. Ik druk op een knopje, in de action hiervan staat dat hij een variabel (in de viewcontroller dus) moet setten, en dan een nieuwe subview moet openen. In die nieuwe subview heb ik een knopje die na drukken erop laat zien wat de waarde is van die gesette value. Dat werkt, alleen ik heb ook (als test) in de awakeFromNib neergezet dat hij de waarde moet laten zien. Daar gaat het niet goed, dus op dat moment is de waarde nog null. Iemand een idee hoe dat kan? |
#7
|
|||
|
|||
Ok, ik blijk dus toch wel een werkende viewcontroller te hebben. Na wat puzzelen, proberen, hulp met jouw stukje code en uiteindelijk goed linken enzo is het gelukt. Variabelen werken nu op meerdere views
Thanx. Een probleempje echter, ik wil ook graag een functie in een andere view kunnen benaderen. ik gebruik [viewNaam functieNaam]; Hier krijg ik echter de fout"viewNaam may not respond to '+functieNaam' Mis ik iets? Dit is een stukje uit de betreffende view waar de functie gedeclareerd wordt: (de functie heet dus startIt) viewNaam.h Code:
- (void)startIt; Code:
- (void)startIt { //dingen die er gedaan worden staan hier } |
#8
|
||||
|
||||
Je hebt waarschijnlijk geen instance van die view(controller)? Als het een functie is die niet moet uitgevoerd worden op een het eigen object, zet je een + voor de void;
Code:
+ (void)startIt; + (void)startIt { //dingen die er gedaan worden staan hier } |
#9
|
|||
|
|||
Eerst even een instantie maken van de class ja [[viewNaam alloc] init];
__________________
Software Engineer iPhone Developer |
#10
|
|||
|
|||
Ok, dat lijkt te werken met een + ipv een -.
Echter, nu krijg ik de melding "Warning: instance variable 'test' accessed in class method". ik probeer daar dus een variabel te wijzigen.. dat kan dus nu niet meer. moet ik dat nu anders aanroepen o.i.d.? |
#11
|
|||
|
|||
Als je de + gebruikt, dan betekent dat dat de Method static is.
Dat wil zeggen dat je deze kunt aanroepen zonder dat je een instantie van je object nodig hebt. Echter wil je in je Method een property gebruiken, maar deze bestaat niet, want je hebt geen instantie van je object. 3 dingen die je kunt doen: 1. je property ook static maken 2. je method weer een instance method maken, en de class instantieren met de code die ik je eerder gaf. 3. eventjes de stanford Objective-C tutorials van itunes halen. Mijn voorkeur gaat uit naar die laatste 2. |
Labels |
globaal, global, subview, variabel |
Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten) |
|
Discussietools | |
Weergave | |
Soortgelijke discussies |
||||
Discussie | Auteur | Forum | Reacties | Laatste bericht |
iPhone 3G: Te gebruiken op meerdere netwerken? | davelebowski | Unlock | 3 | 23-03-11 20:50 |
Archiveren van UIImageView's rechtstreeks uit array zonder [self.view subviews] | celaeno2 | Ontwikkelen voor iOS | 1 | 24-11-10 02:14 |
sounds.strings | steelgate | iPhone algemeen | 0 | 05-08-10 16:38 |
Veilige methode om iPhone op meerdere computers te gebruiken? | dennis00 | iPhone algemeen | 2 | 11-10-09 21:04 |
remove alle subviews? | cygnusx | Ontwikkelen voor iOS | 8 | 11-09-09 11:46 |
|
|