MY code is
Paint paint= new Paint();
paint.setTextSize(size);
int iRet = 0;
if (str != null && str.length() > 0) {
int len = str.length();
float[] widths = new float[len];
paint.getTextWidths(str, widths);
for (int j = 0; j < len; j++) {
iRet += (int) Math.ceil(widths[j]);
}
}
return iRet;
I want to get the width of string ,but the return result has errors with TextView.
Don’t know the right way.
thanks.
I show it in the virtual machine.
you can try to use canvas,Once a time I found the Textview can’t show my text in right size ,so I use Canvas draw the text out ,the I get the width I want,that’s maybe some wrong cause by dp,sp or px.