Sto cercando un metodo in Android che utilizzi un input (testo, dimensione_di_modello, larghezza_dispositivo) e in base a questi calcoli restituirà l'altezza necessaria per visualizzare un testo particolare?Come misurare l'altezza di TextView in base alla larghezza del dispositivo e alle dimensioni del carattere?
Sto impostando una visualizzazione di testo/altezza runtime webview in base al suo contenuto, sono a conoscenza del contenuto di warp ma non posso utilizzarlo nel mio caso a causa di un problema di altezza minima della vista web.
Quindi sto cercando di calcolare l'altezza e in base a ciò sto impostando l'altezza di visualizzazione.
Ho provato con i seguenti modi
Paint paint = new Paint();
paint.setTextSize(text.length());
Rect bounds = new Rect();
paint.getTextBounds(text, 0, 1, bounds);
mTextViewHeight= bounds.height();
Così uscita è
1) "Ciao Mondo" restituisce un'altezza di 13 per carattere 15
2) "L'ultima versione di Jelly Bean è qui, con ottimizzazioni delle prestazioni "restituisce un'altezza 16 per font 15
Quindi ho provato con
Paint paint = new Paint();
paint.setTextSize(15);
paint.setTypeface(Typeface.SANS_SERIF);
paint.setColor(Color.BLACK);
Rect bounds = new Rect();
paint.getTextBounds(text, 0, text.length(), result);
Paint.FontMetrics metrics = brush.getFontMetrics();
int totalHeight = (int) (metrics.descent - metrics.ascent + metrics.leading);
Così uscita è
1) "Ciao Mondo" restituisce un'altezza di 17 per carattere 15
2) "L'ultima versione di Jelly Bean è qui, con ottimizzazioni delle prestazioni" restituisce un'altezza di 17 per font 15
se ho impostato questi valori per la mia vista, quindi il suo testo è stato tagliato, non mostra tutto il contenuto.
Ancora una volta sembra ok su alcuni tavoli perché ha una larghezza grande ma non sul telefono.
C'è un modo per calcolare l'altezza in base al contenuto?
Risposta stupenda. – Noundla
qual è la dimensione del testo in pratica? –