首页 > 其他分享 >直播平台怎么搭建,Android获取文本的宽度和高度

直播平台怎么搭建,Android获取文本的宽度和高度

时间:2023-06-28 14:24:53浏览次数:43  
标签:文本 text float mPaint textWidth1 宽度 Android 直播 rect

直播平台怎么搭建,Android获取文本的宽度和高度

方法一:先绘制文本所在的矩形区域,再获取矩形区域的宽度

 


    Rect rect = new Rect();
    mPaint.getTextBounds(text,0,text.length(), rect);
    canvas.drawRect(rect, mPaint);
    float textWidth1 = rect.width();
    Log.d("111","textWidth:"+textWidth1);

上述方法由于矩形边框紧贴文字,所有没有多余的空间。

 

方法二:通过Paint的measureText方法直接测量文本宽度

 


    float textWidth2 = mPaint.measureText(text);
    Log.d("111", "textWidth:"+textWidth2);
    canvas.drawLine(0, rect.bottom + 20, textWidth2, rect.bottom + 20, mPaint);

 

此方法计算出的宽度会加上开始和结尾的空间,这个空间就是文字和文字之间的空间,为了美观而存在。如果加上下划线会比较直观。

 

方法三:计算出每个文字的宽度,最后计算总和

 


    float[] textWidths =new float[text.length()];
    mPaint.getTextWidths(text, textWidths);
    float textWidth1 =0;
    for(int i=0;i<textWidths.length;i++){
        textWidth1 = textWidth1 + textWidths[i];
    }
    Log.d("111","textWidth:"+textWidth1);

 

 以上就是 直播平台怎么搭建,Android获取文本的宽度和高度,更多内容欢迎关注之后的文章

 

标签:文本,text,float,mPaint,textWidth1,宽度,Android,直播,rect
From: https://www.cnblogs.com/yunbaomengnan/p/17511275.html

相关文章

  • 直播商城源码,EditView和TextView的综合应用
    直播商城源码,EditView和TextView的综合应用MainActivity.main publicclassMainActivityextendsAppCompatActivity{  Buttonbt;  TextViewtv;  EditTextet;  View.OnClickListenerocl=null;  @Override  protectedvoidonCreate(Bundlesa......
  • 直播带货源码,LintCode 大小写转换
    直播带货源码,LintCode大小写转换直接利用C++中的tolower(大写转小写)函数。 classSolution{public:  /**   *@paramstr:theinputstring   *@return:Thelowercasestring   */  stringtoLowerCase(string&str){    //Writeyour......
  • Android 小白在两年时间成为一个大牛,我究竟做了什么?
    初识Android=========“同学们,给大家介绍一下,我是你们未来一年的移动互联网开发讲师”,我在大三的时候,这是我和Android第一次交流,当时的课讲实话,我没听,一点都没有,只是知道了有个东西叫Android开发。还是和大多数人一样,做着自己喜欢的事情。我们专业并不是和移动开发相关的,这点......
  • Android:知道类加载过程面试还是卡壳?硬核总结,一网打净“类”的基础知识
    前言之前说了类加载的过程,但是有的读者表示还是有些面试题还是答不来,所以今天就来总结下类加载、对象实例化方面的知识点/面试题,帮助大家加深印象。全是干货,一网打尽类的基础知识!先看看下面的问题都能回答上来吗?描述new一个对象的过程,并结合例子说明。类初始化的触发时机。多线程进......
  • 2023年最新Android Framework源码高级笔记+学习路线图+硬核资料库,跪着啃完了。。。
    虽然疫情已经过去,餐饮、旅游一些实体经济迅速回暖,但是互联网的寒冬却还没有过去,很多大厂都在裁员,裁员比例还挺高,我们一千多人的公司就直接裁掉30%。今年的各大公司基本只有两个目标:一个是营收,那些投入产出比不高的项目或者事情都暂时搁置,可做可不做的就不做;另外一个就是降本增效,通......
  • 渣渣二本的辛酸面试之路:从深圳外包到杭州蚂蚁金服,4年小Android的爬坑历程
    写在开头笔者16年于长沙一个普通二本,毕业后去了满地都是机会的深圳。第一份工作是一家外包公司,主要业务是电商和电子支付信息安全方面的。一年后跳槽到华润旗下一个子公司做金融。至今已工作4年。大家都知道,对于跟我一样没有名校背景,也没有大厂出身的程序员来说,面试唯一的加分项就......
  • 转型Android系统开发,200份简历成功上岸(艰难的求职历程)
    今年的Android就业真的太不容易了,在找工作的过程中多次想放弃,被裁员两个月了,本科毕业5年,有大厂经历,Android应用4年,Android系统Framework半年左右,想要一个28K的工作都找不到。投递了200份简历,只有4个面试邀请。只好把屏蔽的外包公司都解开了,但外包的一般薪资只能达到20K左右。绝......
  • Android架构开发进阶指南,Android Jetpack Compose强化实战
    在我们日常的开发中,如果所有人各自为战,没有统一规范,久而久之,项目代码会变得混乱且后续难以维护。而这时,许多人就会使用Jetpack这个由多个库组成的套件,来减少样板代码,以便将精力更多的集中于重要的编码工作上面。统一的架构模式通常会给我们带来诸多好处,如:统一开发规范,使得代码整洁......
  • 【Flutter专题】Android Flutter入门笔记、技术解析与项目实战
    Flutter是一个跨平台、高性能的移动UI框架,其采用Dart语言开发,并使用自己的渲染引擎来绘制UI,保证了自身的高性能,保证了在Android和iOS上UI的一致性。目前Flutter已经支持iOS、Android、Web、Windows、macOS、Linux、Fuchsia(Google新的自研操作系统)等众多平台。与其他跨平......
  • 面试别瞎背题了!八月冲刺不要毁在传统一问一答的模式里,这份Android面试准备计划助你事
    背景这阵子,各大网络社交平台,刷到最多的就是面试求职相关的信息。这位网友在脉脉职言求助。本科毕业三年了,一直做安卓开发,请问跳槽找工作要怎么准备呢?写代码三年月薪不到一万是不是很失败?近日,还有程序员就因为这个问题在某职场社交软件上,被认证了的百度京东员工一顿嘲讽。找工作不可......