2

可能重复:
如何在 Android 上获取字符串宽度?

我使用以下代码计算字符串的宽度,但宽度的结果与 TextView 中显示的宽度有很大不同。我怎样才能正确地做到这一点?谢谢指教。

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;
4

2 回答 2

5

我想试试这个代码的字符串宽度

float width = paint.measureText(string);
于 2012-11-01T06:22:19.533 回答
4

试试这段代码,希望对你有帮助..

Paint paint= new Paint(); 
paint.setTextSize(size);
int txtWidth = (int)(paint.measureText("Hello how are you?"));
于 2012-11-01T06:20:45.250 回答