Domanda

Nelle app per iPhone di Apple (come Contatti), hanno una bella icona della lente d'ingrandimento nella parte superiore dell'indice di visualizzazione della tabella. Poiché l'API dell'indice di visualizzazione tabella è basata sui caratteri, presumo che questa lente di ingrandimento sia un carattere Unicode. Finora ho fatto ricorso a un personaggio punto interrogativo lì, ma sembra zoppo.

Qualcuno può dirmi che carattere ha la lente d'ingrandimento?

È stato utile?

Soluzione

Restituzione UITableViewIndexSearch come funziona anche il titolo dell'indice di sezione (uguale a @ " {search} ").

Altri suggerimenti

@ " {ricerca} " FTW.

Restituisce quel titolo ed è magicamente sostituito dal glifo corretto.

In tableView: sectionForSectionIndexTitle: AtIndex: scorrere esplicitamente verso l'alto e restituire NSNotFound:

- (NSInteger) tableView:(UITableView *)tableView
sectionForSectionIndexTitle:(NSString *)title
                atIndex:(NSInteger)index {
    if (index == 0) {
        [tableView setContentOffset:CGPointZero animated:NO];
        return NSNotFound;
    }
    return index;
}

Esiste già un punto di codice UTF esistente per la lente d'ingrandimento. È U + 1F50D . Tuttavia è leggermente complicato far riconoscere a Xcode questo numero. Secondo la Guida alla programmazione delle stringhe di Apple, i bit UTF dovrebbero essere suddivisi in due coppie surrogate UTF-16 (0xD83D, 0xDD0D). Verificare con questo calcolatore di coppie surrogate per riferimento.

Un'istanza NSString con i contenuti della coppia di surrogati può essere ottenuta con:

[NSString stringWithFormat:@"%C%C", 0xD83D, 0xDD0D];

Puoi certamente mettere un carattere Unicode nell'indice della vista tabella (l'ho fatto con altri caratteri) e mettere la tua intestazione nella prima sezione della tabella al posto di tableViewHeader. Detto questo, devo ancora trovare la lente d'ingrandimento in uno dei riferimenti unicode. La chiusura che ho trovato è il simbolo del registratore telefonico - ? (\ u2315). Sfortunatamente, punta nella direzione sbagliata e la "maniglia" si estende nella "lente d'ingrandimento."

Nella sezioneIndexTitlesForTableView aggiungi ad esempio un titolo NSMutableArray * e oltre agli indici aggiungi [titoli addObject: UITableViewIndexSearch]

Qualcuno afferma che Apple gli ha detto che non è supportato nella SDK.

Posso capire perché qualcuno potrebbe non voler usare l'immagine, anche se è molto carina ... i personaggi sono molto più facili da mantenere e possono ridimensionare con poco sforzo.

? è un'altra opzione unicode per un glifo simile a una lente d'ingrandimento .. di nuovo non è rivolta nella direzione corretta .. Credo che sia davvero una specie di simbolo di genere ermafrodita. Il codice HTML per il simbolo Unicode sopra è & amp; # 9894;

Penso davvero che un simbolo di lente d'ingrandimento debba essere aggiunto al set di caratteri unicode in " 26: Misc. Simboli ".

So che questo è un vecchio post, ma poiché è simile a quello che stavo cercando ... Se qualcuno sta cercando il carattere Unicode della lente d'ingrandimento, sarebbe questo \ u128269 rappresentato da questo: & # 128269; cioè se il tuo browser visualizza Unicode

È possibile visualizzare tutti i dettagli su questo sito Web: http://www.charbase.com/1f50d-unicode-left-pointing -magnifying-vetro

Nel mio caso volevo fare una casella di input di ricerca con la lente d'ingrandimento, riesco a farlo tramite questo pezzo di codice, tieni presente che dobbiamo usare un carattere speciale che potrebbe non funzionare nel browser precedente o OS:

<input type="text" style="font-family: Segoe UI Symbol;" placeholder="&#128269;">

Funziona sulla mia macchina Win7 sia in Firefox che in Chrome, ma IE è sempre un'eccezione con segnaposto in questo caso.

È possibile utilizzare uno spazio come carattere per l'indice e quindi sovrapporre un UIImageView che ha l'interazione dell'utente disabilitata e contiene la seguente immagine:  Icona ricerca
(fonte: booleanmagic.com )

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top