2012-02-02 12 views

risposta

19

Il modo più semplice per andare sarebbe quella di utilizzare Google:

NSString *myURLString = @"http://www.google.com/s2/favicons?domain=www.stackoverflow.com"; 
NSURL *myURL=[NSURL URLWithString: myURLString]; 
NSData *myData=[NSData dataWithContentsOfURL:myURL]; 

UIImage *myImage=[[UIImage alloc] initWithData:myData]; 

che dovrebbe funzionare.

Dovresti solo sostituire il dominio nel quale vuoi interrogare la tua icona.

+0

Questo funzionava! Ad ogni modo, l'ho provato oggi e ho restituito un errore simile al seguente: Errore Domain = NSCocoaErrorDomain Code = 256 "Impossibile aprire il file" favicon "." UserInfo = 0x10a1e4150 {NSURL = https: //plus.google.com/_/favicon? Domain = www.microsoft.com} – MrAsterisco

+0

dataWithContentsOfURL non è raccomandato da apple. È un processo sincrono e blocca l'esecuzione per l'internet lento. – Kaunteya

+0

puoi dirmi come posso ottenere anche il titolo. –

3

Se si desidera che la favicon, provare a chiamare questo URL: http://www.google.com/s2/favicons?domain=<rss_domain> da dentro la vostra applicazione:

[NSURLConnection connectionWithRequest: 
    [NSURLRequest requestWithURL: 
     [NSURL URLWithString:@"http://www.google.com/s2/favicons?domain=google.com"]] 
           delegate:self]; 

In caso contrario, i metadati di un canale RSS ha un elemento facoltativo, <image>, che è descritto qui: http://www.rssboard.org/rss-specification#ltimagegtSubelementOfLtchannelgt

Per esempio:

<channel> 
    <language>en-us</language> 
     <title>Scientific American - News</title> 
      <image> 
       <title>Scientific American</title> 
       <link>http://www.scientificamerican.com</link> 
       <width>144</width> 
       <url> 
        http://www.scientificamerican.com/media/logo/SAlogo_144px.gif 
       </url> 
       <height>45</height> 
      </image> 
     ... 

Questa immagine sarà tipicamente più grande di favicon di un sito, e come non è un quadrato, ma con un ritaglio e un ridimensionamento intelligenti, può funzionare come un'icona se la favicon di un feed non è disponibile.

-7

Se si salva l'immagine sul desktop,

1) immagine di trascinamento in Xcode 2) Vai Interface Builder 3) Vai ispettore identità dopo aver selezionato l'UIImage 4) Sotto la goccia image giù box, seleziona il nome della tua immagine.

Spero che questo aiuti!

Problemi correlati