2013-09-05 14 views
5

Sto provando ad avere un EditText personalizzato basato sullo sfondo che sto usando per. L'immagine di sfondo ha alcuni spazi tra le aree di immissione, quindi ho bisogno di avere uno spazio tra i caratteri (crenatura) per adattarli a destra. Quindi, per esempio dopo ogni carattere che l'utente inserisce, ho bisogno di mettere 4 spazi bianchi dopo.Letter Spacing in EditText per Android

Non sono riuscito a trovare alcuna soluzione per questo in rete, alcune persone hanno suggerito TextWatcher, ma non sono riuscito a farlo funzionare come lo voglio anch'io.

Qualcuno può aiutarmi a riguardo?

Grazie

+0

vuoi semplicemente aggiungere dello spazio bianco tra i caratteri? –

+0

Oggi dovevo farlo da solo, trovare la mia risposta qui: http://stackoverflow.com/a/26732420/1304830 – Fr4nz

risposta

0

Questa domanda è legata alla How to change letter spacing in a Textview?

Come mostrato in questo numero: android format edittext to display spaces after every 4 characters una soluzione potrebbe essere quella di inserire spazi con codice Java ...

è necessario utilizzare TextWatcher per raggiungere spazi di scopo visivo.

E utilizzare qualsiasi stringa semplicemente raggruppati per logica spazio aderire indietro o ad anello attraverso l'intera stringa per carattere saggio ed eliminare (char) 32 dalla stringa

quanto ne so carattere effettivo la spaziatura non è possibile, anche se mi piacerebbe usarla anch'io.

Un'altra opzione potrebbe essere l'utilizzo di un carattere personalizzato con la spaziatura dei caratteri inclusa.

1

Ho pensato di utilizzare un carattere personalizzato? Alcuni tipi di font sono fatti per allungare o restringere o avere spazi vuoti. Con così tanti tipi di carattere disponibili online, puoi sicuramente trovare qualcosa. Puoi anche crearne uno con un software. Potrebbe essere dispendioso in termini di tempo se si avvia la scritta da zero. Non sono sicuro al 100% se si adatta perfettamente al tuo background, ma è un'idea che puoi prendere in considerazione.

Se non si adatta, suppongo che tu possa sempre personalizzare lo sfondo per correggere anche il tuo font. Ecco il codice per coloro che potrebbero voler utilizzare anche caratteri personalizzati nella loro app.

Typeface myfont = Typeface.createFromAsset(getAssets(), 
      "fonts/Blocks2.ttf"); 

myeditText.setTypeface(myfont); 

Il carattere si trova nella cartella degli asset sotto un'altra cartella denominata caratteri.