//

UIButton, addTarget naar ander object dan "self"

UIButton, addTarget naar ander object dan "self" discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Stel je hebt een UIBUtton *button en je wil daar een actie aan koppelen naar een method in een ander object, in plaats van "self". ...



Ga terug   iPhone, iPod touch, iPad en Apple TV forum > Development > Ontwikkelen voor iOS
Wachtwoord vergeten? Registreren!
Registreer FAQ Ledenlijst Kalender Berichten van vandaag

Reageren

 

Discussietools Weergave
  #1  
Oud 08-12-10, 20:16
celaeno2 celaeno2 is offline
• iOS 3.1.3
• Besturingssysteem: Windows
 
Geregistreerd: Mar 2010
Berichten: 23
Standaard UIButton, addTarget naar ander object dan "self"

Stel je hebt een UIBUtton *button en je wil daar een actie aan koppelen naar een method in een ander object, in plaats van "self".

Met andere woorden: Je hebt een ViewController, van waaruit een object wordt aangeroepen (bijv een UITableViewCell met een UIButton) en als de button wordt ingedrukt moet er een method "klik:" worden aangeroepen in de viewController.
Code:
[button addTarget:anderObject action:@selector(klik:) forControlEvents:UIControlEventTouchUPInside];
Wat moet er precies in "anderObject" staan? Dat zou toch simpel moeten zijn, maar ik kan het nergens vinden...

Iemand een idee??

Laatst gewijzigd door celaeno2; 08-12-10 om 20:19.
Advertentie
Advertentie Gesponsorde links (verdwijnt na registratie)

  #2  
Oud 09-12-10, 00:39
Geno's schermafbeelding
Geno Geno is offline
• iOS 9.0 beta
• 8.4
• Besturingssysteem: Mac OS X
 
Geregistreerd: Nov 2009
Berichten: 251
Standaard

In dit geval gebruik je self, omdat de method gebruikt wordt icm een UIButton.

Met de action: method geef je aan wat de button moet doen. In dit geval, als iemand op de button drukt, wordt klik: method aangesproken.

Dus als de knop iets moet doen, moet je klik: method instellen. Bv. zo:

- (void)klik: (id)sender
{
// wat je button moet doen
}

(id)sender is niet nodig als argument, maar ik vind het altijd prettig om aan te geven welke methods voor de interface worden gebruikt.

In de documentatie staat dat addTarget: een (id) als argument heeft. Dat betekent dat je elk object, wat kan reageren op deze method, kan gebruiken (alles wat van UIControl class afstamt).
__________________
iPod touch v3 - iPod Nano 2011 - iMac 27" - iPhone 4S - iPad 2 - MacBook Air 11,6"
  #3  
Oud 10-12-10, 15:35
TUX2K TUX2K is offline
• iOS 14.0
• 8.1.2
• Besturingssysteem: Mac OS X
 
Geregistreerd: Oct 2008
Locatie: Amsterdam
Berichten: 174
Standaard

Nou waar jij anderObject hebt staan moet een instantie pointer zijn naar het andere object.

Dus als jij in de viewcontroller een andere viewcontroller hebt ja die dus gewoon daar neer zetten.
  #4  
Oud 11-12-10, 22:20
celaeno2 celaeno2 is offline
• iOS 3.1.3
• Besturingssysteem: Windows
 
Geregistreerd: Mar 2010
Berichten: 23
Standaard

Bedankt voor de reacties

Alleen moet je dan dus denk ik wel een nieuwe instantie van je viewcontroller maken. iK vroeg me eigenlijk ook af of het mogelijk was om het target van de UIButton te zetten op een al eerder gemaakte instantie van een object (bijv viewcontroller).

Ik wilde vanuit een ander object de ABPeoplePickerNavigationController (wie verzint dat soort rare namen pffff haha) aanroepen zodat dat ding opent in de viewcontroller, maar heb dat nu gedaan door met hittest de gegevens van het touch object naar de viewcontroller te sturen, wat denk ik ook een betere manier is
Reageren



Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten)

 

Soortgelijke discussies

Discussie Auteur Forum Reacties Laatste bericht
iPhone 3G: bootloader downgrade "06.04" naar "05.08" AzNxJohnnii Unlock 11 10-05-10 20:02
[Wi-Fi] Dan wel, dan niet "unable to join the network" cloverfield Wi-Fi 0 31-01-10 00:26
Probleem met "Navigon Europe" "Live Traffic" na update naar 1.4 iPhony Archief 0 18-12-09 20:28
Ander geluid bij ontvangen "nieuwe E-mail" iphonefriend Archief 2 15-04-08 17:14
1 en 0 en ipv "on" ,"off" of "aan", "uit" SuperDutch iPhone algemeen 11 07-01-08 15:13

Regels voor berichten
Je mag geen nieuwe discussies starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit
Trackbacks are Aan
Pingbacks are Aan
Refbacks are Uit



Alle tijden zijn GMT +2. Het is nu 14:06.