Ottenere i Dati da XCAsset catalogo

Ho capito che per ottenere le immagini da asset catalogo posso usare UIImage(di nome: “nome file”) per farlo.

tuttavia, cosa succede se io sono sempre DATI da XCAsset catalogo? Io non riesco a capire questo fuori.

Ho provato,

let url = NSBundle.mainBundle().URLForResource("fileName", withExtension: nil)
let data = NSData(contentsOfURL: url!)

Ma è nullo. Non so come ottenere i dati dal XCAssets catalogo. Se qualcuno mi può aiutare (su google non ti ha aiutato) fatemi sapere, sarò molto grato!

Aggiornamento:

Perché sto cercando di ottenere i dati da un’attività di catalogo? Ho trascinato una gif animata in asset catalogo. E l’attività di catalogo che interpreta come DATI. Questo è il motivo per cui sto cercando di ottenere i dati dell’attività del catalogo.

Aggiornamento:
Questa è una schermata del mio Patrimonio.xcassets cartella assomiglia.

Ottenere i Dati da XCAsset catalogo
Ha un file chiamato “_Loading” e, a destra, è considerato un “set di Dati”.
Io non sono sicuro di come ottenere il set di dati dalle Attività a catalogo.

  • Non ottenere dati da un asset catalogo. Asset cataloghi di immagini, non i dati. Il codice che hai postato è per la lettura di un file dal pacchetto di risorse, non un bene.
  • Come e perché si fanno a mettere i dati in XCAssets?
  • Qual è il problema riscontrato con il codice da te postato? In generale, è corretto per la lettura di un file dal pacchetto di risorse. Basta assicurarsi che il vostro specificare il corretto nome del file e l’estensione. E ricordate che in caso di questioni.
  • Funziona, ma solo se “fileName” non è un bene di catalogo. Ho messo i dati dell’asset catalogo dal momento che è una nuova funzionalità. Posso trascinare i dati dell’asset catalogo, ma tirando fuori è un mistero.
  • Btw… ho trascinato una gif animata in asset catalogo. E l’attività di catalogo che interpreta come DATI. Questo è il motivo per cui sto cercando di ottenere i dati dell’attività del catalogo.
InformationsquelleAutor DerrickHo328 | 2015-10-26



2 Replies
  1. 53

    Ho intenzione di rispondere alla mia domanda.

    Dal momento che iOS 9, l’Attività Catalogo permette più Immagini. Essi consentono di insiemi di Dati. Al fine di ottenere dati dall’Attività Catalogo, è necessario utilizzare il NSDataAsset classe.

    Esempio: si Supponga di disporre di un Bene di Dati denominato “CoolJSON”

    if let asset = NSDataAsset(name: "CoolJSON") {
        let data = asset.data
        let d = try? NSJSONSerialization.JSONObjectWithData(data, options: [])
    }

    In questo esempio ho girato un NSData in oggetto json.

    NSDataAsset classe di riferimento

    • Cool. Io non so su di esso.
    • c’è una configurazione speciale, che devo fare?, perché quando il check per il bene di dati restituisce nil quindi non posso accedere al contenuto.
    • alcuna configurazione speciale. Che set di dati stai cercando di ottenere?
    • ho creato una DataAsset “aeroporti” nella mia .xcassets e contiene un file json, ma quando y chiamare il metodo NSDataAsset(nome: “aeroporti”) restituisce nil
    • dovrebbe essere NSDataAsset(nome: “jsonName”)
    • sì, il “jsonName” è aeroporti troppo, ho creato un nuovo progetto e ha fatto la stessa cosa e ha funzionato, non riesco a capire quale è il problema nel progetto
    • ok, quindi il tuo dire funziona in una fresca progetto, ma non nel progetto attuale? Beh, se hai fatto un nuovo xcasset catalogo è possibile che non abbia aggiunto che per il tuo progetto. Pertanto, può essere solo l’accesso predefinito. Questo è solo speculazione. Se hai il codice su github posso provare a dare un’occhiata.
    • Cerchiamo di continuare questa discussione in chat.
    • c’è un modo per salvare / aggiungere ulteriori dati che file json in attività ?
    • Attività fare clic destro sul json e visualizzarlo nel finder. Aprire e modificare.
    • Il problema è probabile che la Destinazione di Distribuzione del prodotto era troppo vecchio per la funzione che richiede iOS 9 / macOS 10.11.

  2. 0

    Caricare immagine gif da Attività.xcassets file. Che per il caricamento file json.

    1. NUOVO: 【Nuovo Set di Dati】 cassa di un set di dati e rinominare “divertente” in Attività.xcassets cartella. tutto a posto, il file gif è aggiunta all’Attivo.xcassets cartella.
      Ottenere i Dati da XCAsset catalogo

    2. USO:

      NSDataAsset *asset = [[NSDataAsset alloc] initWithName:@"funny"]; 
      self.gifImageView.image = [UIImage sd_animatedGIFWithData:asset.data];                                        
      • (UIImage *)sd_animatedGIFWithData:(NSData *)dati: è un UIImage+GIF categoria per il caricamento di immagini gif in SDWebImage.

Lascia un commento