Qual è la differenza tra oggetto e oggetto esterno nell'IB?
Quando dovrei usare ciascuno?Oggetto e oggetto esterno in XCode Interface Builder
risposta
Un oggetto è qualcosa che è effettivamente incorporato nel pennino.
Un oggetto esterno è uno che il codice che carica il pennino promette di fornire al momento del caricamento (credo tramite un dizionario che mappa le chiavi su oggetti esterni).
La maggior parte delle persone non utilizza mai alcun oggetto esterno oltre al proprietario del file (che è già fornito per te). Quasi certamente vuoi solo oggetti.
Aggiunta alla altra risposta: È possibile utilizzare un 'oggetto esterno' per accedere a un oggetto comune su più xib. Potresti farlo anche in altri modi, ma sarebbe conveniente.
Ad esempio, se si esegue un'azione "grande" per i clic sui pulsanti su più xib e se si dispone di molte di tali azioni (e inoltre se si tratta degli stessi dati su cui si sta eseguendo questa azione), invece di chiamando addTarget:action...
, è possibile creare l'oggetto proxy di questa classe e collegarlo ai pulsanti.
È possibile collegare l'oggetto proxy per il tuo XI ter utilizzando il seguente codice:
id *proxy = <someObject>; //The object you want to wire up
//In the below line of code use the same key as the identifier you give for the proxy object in the Interface Builder
UINib *nib = [UINib nibWithNibName:@"ViewController" bundle:Nil];
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:proxyObject,@"proxy", nil];
NSDictionary *dict2 = [NSDictionary dictionaryWithObjectsAndKeys:dict,UINibExternalObjects, nil];
NSArray *nibArray = [nib instantiateWithOwner:self options:dict2];
self.view = [nibArray objectAtIndex:0];
- 1. XCode Interface Builder: modifica classe di oggetto già inserito
- 2. Xcode Interface Builder Non mostra oggetto Delega app
- 3. XCode (Interface Builder): aggiornamento cornici e vincoli?
- 4. Colori strani in XCode Interface Builder?
- 5. Ordinamento di scene in Xcode Interface Builder
- 6. Come rimuovere oggetti da Interface Builder in Xcode 5?
- 7. Collegare una UILabel in Interface Builder e XCode?
- 8. XCode Classe sconosciuta ***** nel file Interface Builder
- 9. Oggetto esterno negli storyboard
- 10. Utilizzo di Xcode e Interface Builder per creare viste prototipo
- 11. Funzionalità nascoste di Interface Builder?
- 12. Interface Builder appare sfocato sul display retina in Xcode 6.3
- 13. IBOutlet non si connette in Interface Builder- Xcode 4.2
- 14. Saving Interface Builder Modifiche durante la creazione in Xcode
- 15. Rimuovi l'autolayout (vincoli) in Interface Builder
- 16. Come ruotare un UIImageView in Interface Builder?
- 17. Oggetti segnaposto in Interface Builder
- 18. UIView `readableContentGuide` in Interface Builder?
- 19. Interface Builder UIDatePicker
- 20. Aggiornamento classe UIView in Interface Builder
- 21. XCode Interface Builder mostra "Nessuna selezione" per tutti i file
- 22. NSTextField con NSNumberFormatter automatico in Interface Builder
- 23. XCode: Interface Builder si blocca durante la compilazione di XIB
- 24. Che cos'è la sezione "Document" di XCode Interface Builder
- 25. Interface Builder Clipping Designable Views
- 26. Cacao - Tecniche consigliate per il debug dei problemi di collegamento tra XCode e Interface Builder
- 27. Classe sconosciuta nel file di Interface Builder
- 28. Passare in un oggetto come parametro esterno
- 29. Differenza di colore tra drawRect e Interface Builder?
- 30. Impostazione dell'immagine di UIImageView in Interface Builder
Si può fornire esempio quando avrei usato ciascuno? (Solo idea non codice). Grazie. – RCB
@RCB: quasi tutto in un pennino è un oggetto di qualche tipo. Dovresti usare l'oggetto letterale se vuoi incorporare un oggetto di una classe che IB non conosce nel tuo pennino. Lo faresti modificando il valore della classe per il tuo nuovo oggetto. Usare direttamente un oggetto non è molto comune. Per quanto riguarda l'oggetto esterno, probabilmente non avrai mai bisogno di farlo. –