Video: Week 9 2024
Macintosh applikationsudvikling bruger
tilbagekaldelser for at tillade Mac OS X at udføre kode i din app til bestemte operationer. Hvis du opretter en standard Macintosh-vindue- eller dokumentbaseret app, vil den allerførste kode, som OS X udfører, findes i en af følgende tilbagekaldelsesmetoder, du skal oprette til din app, afhængigt af appdesignet:
-
Dokumentbaserede apps: (void) windowControllerDidLoadNib: (NSWindowController *) windowController
-
En tilbagekaldelse er simpelthen en metode, som operativsystemet til sidst udfører, mens det forsøger at levere eller hente oplysninger fra din app. Din ansøgningskode vil udføre en metode til en kakao klasse, hvor din app vil have mulighed for at angive navnet på en metode i en af dine klasser, for at blive indkaldt til et objekt af den klasse, din app skal også levere.
A delegeret er et hjælperobjekt, som en cacaklasse bruger til at udvide klassens funktionalitet ved at tillade dig at implementere kode, som kakaaklassen vil udføre under visse omstændigheder. En kakaoklasse kontrollerer sit delegeredeobjekt (hvis en er blevet tildelt) for, hvorvidt delegaten gennemfører en bestemt metode. Hvis delegaten har denne metode, udfører kakao-klassen den metode; Hvis delegaten ikke gennemfører denne specifikke metode, bruger kakaoklassen enten en standardmetode eller registrerer en fejl. De fleste delegerede skal indarbejde en særlig protokol , der bestemmer hvilke metoder de kan gennemføre Din kodeks delegerede skal bruge redskabets metoder fra den specifikke protokol, som delegaten forventer.
NSTableView. NSTableView accepterer en delegat, der overholder NSTableViewDelegate-protokollen. Dette omfatter 20 til 30 metoder, som din apps delegeredeobjekt kan implementere for at understøtte din apps behov for at vide, hvad NSTableView gør. Der er metoder, der skal kaldes i din ansøgning, når den skal kende og reagere på en handling, f.eks. Når en bruger foretager et valg i tabellen, eller når en kolonne er ændret.
-
NSApplication. Du kan tildele en NSApplicationDelegate til at håndtere nogle af de metoder, som en NSApplication-instans (din ansøgning) modtager. Disse metoder kan kaldes lige før eller lige efter din ansøgning udfører en anden metode, så din app kan udarbejdes.
-
NSWindow. En NSWindowDelegate, der er tildelt en af dine programmets vinduer, vil give din app en chance for at reagere på en bruger tilpasning, flytning eller andre vindueshændelser.
-
NSMenu. Du implementerer en NSMenuDelegate for at understøtte begivenheder, der sker, når en bruger interagerer med menuer i din ansøgning.