Implementering af tilbagekald i Macintosh-applikationer

Macintosh-applikationsudvikling bruger tilbagekald til at tillade Mac OS X at udføre kode i din app til specifikke operationer. Hvis du opretter en standard Macintosh vindue- eller dokumentbaseret app, er den allerførste kode, som OS X vil udføre, i en af ​​følgende tilbagekaldsmetoder, du skal oprette til din app, afhængigt af appens design:

  • Vinduesbaserede apps: (ugyldig)applikationDidFinishLaunching:(NSNotification*)aNotifikation

  • Dokumentbaserede apps: (void)windowControllerDidLoadNib:(NSWindowController*)windowController

Et tilbagekald er simpelthen en metode, som operativsystemet til sidst udfører, mens det forsøger at levere eller hente oplysninger fra din app. Din applikationskode vil udføre en metode for en Cocoa-klasse, hvor din app vil have mulighed for at angive navnet på en metode i en af ​​dine klasser, for at blive kaldt på et objekt i den klasse, som din app også skal levere.

En delegat er et hjælpeobjekt, som en Cocoa-klasse bruger til at udvide klassens funktionalitet ved at tillade dig at implementere kode, som Cocoa-klassen vil udføre under visse omstændigheder. En Cocoa-klasse tjekker sit delegerede objekt (hvis et er blevet tildelt) for, om delegaten leverer en implementering af en specifik metode. Hvis den delegerede har denne metode, udfører Cocoa-klassen denne metode; hvis delegerede ikke implementerer den specifikke metode, bruger Cocoa-klassen enten sin egen standardmetode eller logger en fejl. De fleste delegerede skal inkorporere en bestemt protokol, der bestemmer, hvilke metoder de må implementere; din kodes delegerede skal bruge implementeringsmetoderne fra den specifikke protokol, som den delegerede forventer.

Her er nogle af de kakaoobjekter, der kan bruge delegerede til at udføre din kode:

  • NSTableView. NSTableView accepterer en delegeret, der adlyder NSTableViewDelegate-protokollen. Dette inkluderer 20 til 30 metoder, som din apps delegerede objekt kan implementere for at understøtte din apps behov for at vide, hvad NSTableView gør. Der er metoder, der vil blive kaldt i din applikation, når den skal kende og reagere på en handling, såsom når en bruger foretager et valg i tabellen, eller når størrelsen på en kolonne ændres.

  • NS-ansøgning. Du kan tildele en NSApplicationDelegate til at håndtere nogle af de metoder, som en NSApplication-instans (din ansøgning) vil modtage. Disse metoder kan kaldes lige før eller lige efter din applikation udfører en anden metode, så din app kan forberedes.

  • NSWindow. En NSWindowDelegate tildelt til et af din applikations vinduer vil give din app en chance for at reagere på en brugers størrelsesændring, flytning eller andre vinduesbegivenheder.

  • NSMenu. Du implementerer en NSMenuDelegate for at understøtte begivenheder, der sker, når en bruger interagerer med menuer i din applikation.


Snagit 2018 anmeldelse Hvad er nyt siden version 13

Snagit 2018 anmeldelse Hvad er nyt siden version 13

TechSmith Snagit er vores foretrukne screenshot- og billedredigeringssoftware. Tjek de nye funktioner i Snagit 2018!

8 onlineværktøjer til at tegne diagrammer og rutediagrammer

8 onlineværktøjer til at tegne diagrammer og rutediagrammer

Har du brug for at oprette diagrammer eller rutediagrammer og vil du ikke installere ekstra software? Her er en liste over online diagramværktøjer.

Kan Spotify ikke afspille den aktuelle sang? Sådan rettes

Kan Spotify ikke afspille den aktuelle sang? Sådan rettes

At have et hus fyldt med trådløst tilsluttede enheder og streamingtjenester som Spotify er fantastisk, indtil tingene ikke fungerer, og du finder interessante løsninger.

Hvad er en NVMe M.2 SSD, og ​​hvor hurtig er den?

Hvad er en NVMe M.2 SSD, og ​​hvor hurtig er den?

NVMe M.2 SSD er det seneste inden for computerharddiskteknologi. Hvad er det, og hvor hurtigt er det i forhold til ældre harddiske og Solid State Drives (SSD)?

Sonos vs. AirPlay: Hvorfor jeg valgte AirPlay til Whole House Audio

Sonos vs. AirPlay: Hvorfor jeg valgte AirPlay til Whole House Audio

Sonos er den perfekte streaming-lydløsning, der starter ved $400 for to højttalere. Men med den rigtige opsætning kan AirPlay være gratis. Lad os gennemgå detaljerne.

Google Backup and Sync App erstatter Fotos og Drev

Google Backup and Sync App erstatter Fotos og Drev

Google Backup and Sync er en ny app, der synkroniserer til Fotos og Drev. Læs videre for at se, hvordan det klarer sig i forhold til OneDrive, Dropbox, Backblaze og Crashplan.

Ledningsskæring: Gennemgang af MyIPTV med SOPlayer

Ledningsskæring: Gennemgang af MyIPTV med SOPlayer

MyIPTV er en kabelskæringstjeneste, der bruger SOPlayer-appen til flere platforme og leverer tv, film og andre former for medier til en betalt betaling

Logitech Oplyst Living-Room Keyboard K830

Logitech Oplyst Living-Room Keyboard K830

Logitech udgav for nylig sit Illuminated Living-Room Keyboard K830, der er tænkt som en hjemmeunderholdnings-ledsager. Her er vores anmeldelse af enheden.

CloudHQ Opdateret: Hurtigere synkronisering, Rediger Dropbox-filer fra Google Docs

CloudHQ Opdateret: Hurtigere synkronisering, Rediger Dropbox-filer fra Google Docs

Her er et kig på opdateringen, der for nylig blev udgivet til CloudHQ, og hvordan den fungerer. Læs videre for at finde mere.

Hvad er OnePlus 6T Android-telefonen?

Hvad er OnePlus 6T Android-telefonen?

OnePlus 6T er en førsteklasses flagskibskvalitet Android-telefon, som sælges med rabat i forhold til Apple iPhone, Google Pixel 3 eller Samsung Galaxy S9.