您的位置:首页 > 移动开发 > Android开发

Android中自定义控件获取text的宽高方式

2015-11-07 22:41 399 查看
paint = new Paint(Paint.ANTI_ALIAS_FLAG);

(1)获取高度方式

paint.setTextSize(subTitleTextSize);

        Paint.FontMetrics fm = paint.getFontMetrics();

        int textHeight = (int) Math.ceil(fm.descent - fm.ascent);

(2)获取宽度方式


 ① int
width= paint.measureText(str)

  ②Rect rect = new Rect();

paint.getTextBounds(str, 0, str.length(), rect);

int w = rect.width(); //获取宽度

int h = rect.height();//获取高度

         ③public static int getTextWidth(Paint paint, String str) {

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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: