首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TextView整数作为可绘制的png

TextView是Android开发中常用的UI控件,用于显示文本内容。整数作为可绘制的png是一个不太常见的需求,但可以通过一些技巧实现。

首先,我们可以创建一个自定义的Drawable类,继承自Drawable,并重写它的draw方法。在draw方法中,我们可以使用Canvas和Paint来绘制我们想要的图形,这里是整数。

代码语言:txt
复制
public class IntegerDrawable extends Drawable {
    private int number;
    private Paint paint;

    public IntegerDrawable(int number) {
        this.number = number;
        paint = new Paint();
        paint.setColor(Color.BLACK);
        paint.setTextSize(50);
        paint.setTextAlign(Paint.Align.CENTER);
    }

    @Override
    public void draw(@NonNull Canvas canvas) {
        String text = String.valueOf(number);
        Rect bounds = new Rect();
        paint.getTextBounds(text, 0, text.length(), bounds);
        int x = canvas.getWidth() / 2;
        int y = canvas.getHeight() / 2 + bounds.height() / 2;
        canvas.drawText(text, x, y, paint);
    }

    @Override
    public void setAlpha(int alpha) {
        // Do nothing
    }

    @Override
    public void setColorFilter(@Nullable ColorFilter colorFilter) {
        // Do nothing
    }

    @Override
    public int getOpacity() {
        return PixelFormat.OPAQUE;
    }
}

接下来,我们可以在Activity中使用这个自定义的Drawable类,并将它设置给一个TextView的背景。

代码语言:txt
复制
TextView textView = findViewById(R.id.text_view);
IntegerDrawable drawable = new IntegerDrawable(42);
textView.setBackground(drawable);

这样,TextView的背景就会显示为一个绘制了整数的png图像。

这个需求在实际开发中可能比较少见,但可以用于一些特殊的场景,比如自定义的计数器控件、游戏中的得分显示等。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

textview复制_长按复制是怎么做

大家好,又见面了,我是你们朋友全栈君。...前段时间因为项目需求实现TextView长按复制功能,特意上百度差了一下有不少实现这个功能方法,隔了好久也怕忘了,总结一下: 先推荐目前感觉最好用方法: 在布局文件TextView控件属性中增加一句话...不过现在版本这个应该也不成问题了 xml文件中可以设置之外,在java代码上也可以一句话设置: TextView tv = new TextView(context); tv.setTextIsSelectable...(true); 除了上面的方法之外还有其他可以实现功能相关方法: 1、使用OnLongClickListener 使用TextView,,然后在代码里给TextView添加OnLongClickListener...点击”复制” 就去获取TextView内容。(PS : 这里是获取内容,而我们还需要将内容放入粘贴管理器还需要一个ClipboardManager 对象.它负责管理复制后粘贴这件事。

1.8K20

Android入门教程 | res资源目录简介与shape绘制和使用

drawable/:位图文件(.png、.9.png、.jpg、.gif)或编译为以下绘制对象资源子类型 XML 文件: 位图文件、九宫格(可调整大小位图)、状态列表、形状、动画绘制对象、其他绘制对象...mipmap/:适用于不同启动器图标密度绘制对象文件。应用图标放这里。 mipmap后面跟着dpi类别,比如hdpi mdpi,里面的图标尺寸大小是不同。...shape绘制和使用 工程目录中有一个drawable文件夹,里面存放是一些静态图片资源文件。...比如位图文件(.png、.9.png、.jpg、.gif);或一些绘制对象资源子类型 XML 文件(本文称为drawable文件)。...[1240] shape介绍 shape又称为“形状绘制对象”。为了简便,以下都称作shape或者“shape文件”。 shape是一种在 XML 文件中定义通用形状。

1.4K20

Excel插件,效果超好地图可视化,绘制区县!

Excel催化剂地图可视化由来 得益于长期浸泡在Excel、PowerBI、dotNET技术社区,很荣欣地可以使用自身技术积累,使用Excel作为载体,用VSTO开发技术,并通过PowerBI社区提供数据可视化思路及方法...在Excel催化剂方案中,可任意组合,如省市区县地图元素同时并存,甚至跨级显示,仅取部分而非全集元素。 这样好处是满足等比例大小、距离基础上,可以局部地图元素更清晰地作比较。 ? ?...在Excel催化剂方案中,可以满足地图拆分操作后再重新整合到主体中进行可视化(地图元素大小和距离等比例显示仍保留) 如下图中,在东莞市地图中(已经再无法拆分东莞、中山等地级市下属不设区县),细分出...只需从PPT软件(PPT形状布尔运算,非常方便按需拆分形状)或专业矢量图编辑工具,对其图形进行切割拆分,命名好各子形状名称,导入到Excel中(Excel支持Svg外部文件格式导入后转化为形状对象...,具体参考过往推文。

9.1K10

Github项目推荐 | Manopth - PyTorchMANO层,生成手部网格作为微分层

PyTorchMANO层(使用v0.4和v1.x进行测试) ManoLayer是一个微分PyTorch层,可以确定地从姿势和形状参数映射到手部关节和顶点。...它可以作为微分层集成到任何架构中以预测手部网格。...Black工作之上。 ManoLayer被开发并用于CVPR19论文《学习手部和被操纵物体关节重建》。可查看即将推出代码。...,将会创建一个 manopth conda环境 下载MANO pickle数据结构 前往MANO网站 点击“Sign Up(注册)”创建帐户并提供你相关信息 下载模型和代码(下载文件应该是 mano_v...作为本地包安装 作为本地包安装以后,你能够在另一个项目中导入和使用ManoLayer python setup.py install cd /path/to/other/project 现在,你可以在另一个项目中使用

3.3K10

【IOS开发基础系列】UITextView专题

最终,该对象包含信息将用于文本绘制。该参数可为 nil 。 返回值         一个矩形,大小等于文本绘制完将占据宽和高。 讨论         可以使用该方法计算文本绘制所需空间。...size 参数是一个constraint,用于在绘制文本时作为参考。但是,如果绘制完整个文本需要更大空间,则返回矩形大小可能比 size更大。...一般,绘制时会采用constraint 提供宽度,但高度则会根据需要而定。 特殊情况         为了计算文本块大小,该方法采用默认基线。...如果NSStringDrawingUsesLineFragmentOrigin未指定,矩形高度将被忽略,同时使用单线绘制。...时底部出现高度不定细微黑线 问题原因:        将Text做宽高计算时,高度值容易得出小数数值,而页面绘制均是基于整数像素点绘制,对于小数点部分,系统会做舍去处理(即便有缩放),固留下高度不定绘制区域

35040

绘制自定义填充图案统计图-patternplot

导语 GUIDE ╲ 饼图、环形图、柱状图和箱式图是我们论文写作和数据统计经常要绘制统计图,常常是使用单一颜色填充(ggplot2大家可能都用烦了吧),小编呕心沥血终于找到一个非常实用又高级绘图...patternplot包不仅可以绘制美观和信息丰富统计图,它可以用颜色或纹理或png或jpeg格式任何外部图像填充统计图,让我们一起来看看吧!!...,运行结束后会在location下生成定义好blank.png图片 #以上是对圆环中一部分进行定义 #type是填充线条/点类型,density是填充密度,color是线条/点d颜色 #pattern.line.size...png", sep='')) #读取location下blank.png图片以填充图形,该图颜色为上面语句定义好背景色 pattern(type="blank", density=1, color...在使用时候修改参数即可,小编就非常喜欢里面的各种线和波点图案,看起来蛮可爱,如果你想绘制与众不同 统计图,就来试试这个R包吧!

1.3K21

Android入门学习笔记(3) 像素换算dp

密度无关像素等于 160 dpi 屏幕上一个物理像素,这是 系统为“中”密度屏幕假设基线密度。在运行时,系统 根据使用中屏幕实际密度按需要以透明方式处理 dp 单位任何缩放 。...系统然后根据适用于当前屏幕密度缩放比例适当地缩放位图绘制对象,以 适当大小显示。 实践验证: 现有一个搬运layout界面: <?...layout_height="68dp" android:background="#26a69a"/> image.png...但是搬运到AndroidStudio中像素位置发生了偏移 image.png 查看AndroidStudio用于调试手机像素大小 image.png 420dpi,1080*1920 根据以上知识进行计算总共长宽...-250)/4=120 image.png 大致符合参考图样子,验证成功。

1.6K00

Android硬件加速介绍与实现

以Android举例,实现一个圆角矩形按钮通常有两种方案:使用PNG图片;使用代码(XML/Java)实现。简单对比两种方案如下: ?...扩展:很多计算机中GPU有自己独立显存;没有独立显存则使用共享内存形式,从内存中划分一块区域作为显存。显存可以保存GPU指令等信息。...Clock为时钟信号线,每个固定时钟周期可向其输入一个特定电压信号,每当一个时钟信号到来时,A和B和就会输出到C。 ? 现在我们要计算8个整数和。...场景2中,TextView设置前后尺寸位置不变,不会触发重新Layout。 软件绘制时,TextView所在区域即为脏区。...由于TextView有透明区域,遍历View树过程中,和脏区重叠多数View都要重绘,包括与之重叠兄弟节点和他们父节点(详见后面的介绍),不需要绘制View在draw(canvas,parent

1.3K60

Android硬件加速介绍与实现

以Android举例,实现一个圆角矩形按钮通常有两种方案:使用PNG图片;使用代码(XML/Java)实现。简单对比两种方案如下: ?...扩展:很多计算机中GPU有自己独立显存;没有独立显存则使用共享内存形式,从内存中划分一块区域作为显存。显存可以保存GPU指令等信息。...Clock为时钟信号线,每个固定时钟周期可向其输入一个特定电压信号,每当一个时钟信号到来时,A和B和就会输出到C。 ? 现在我们要计算8个整数和。...场景2中,TextView设置前后尺寸位置不变,不会触发重新Layout。 软件绘制时,TextView所在区域即为脏区。...由于TextView有透明区域,遍历View树过程中,和脏区重叠多数View都要重绘,包括与之重叠兄弟节点和他们父节点(详见后面的介绍),不需要绘制View在draw(canvas,parent

1.7K80

Android硬件加速原理与实现简介

以Android举例,实现一个圆角矩形按钮通常有两种方案:使用PNG图片;使用代码(XML/Java)实现。简单对比两种方案如下。 ?...扩展:很多计算机中GPU有自己独立显存;没有独立显存则使用共享内存形式,从内存中划分一块区域作为显存。显存可以保存GPU指令等信息。...Clock为时钟信号线,每个固定时钟周期可向其输入一个特定电压信号,每当一个时钟信号到来时,A和B和就会输出到C。 ? 现在我们要计算8个整数和。...场景2中,TextView设置前后尺寸位置不变,不会触发重新Layout。 软件绘制时,TextView所在区域即为脏区。...由于TextView有透明区域,遍历View树过程中,和脏区重叠多数View都要重绘,包括与之重叠兄弟节点和他们父节点(详见后面的介绍),不需要绘制View在draw(canvas,parent

2.1K50

Android 在任意位置绘制文本

使用TextView,结合各种XxxLayout,基本上想在哪显示文字都可以。但当显示文字需要频繁更新时候,使用TextView可能就不是那么明智了。...看到需求,首先想到自然是使用TextView来显示中间数字,通过不断setText来更新文本显示。...然而,运行起来后发现TextView更新有很严重的卡顿,打开TextView#onDraw方法,发现这个方法里做了很多事情,onDraw如此频繁地被调用,卡顿是自然。...如果直接继承View,onDraw时使用Canvas#drawText实现文本绘制,省去TextView大量额外计算,效率则会提升很多。...);drawHorizontalLine(canvas, y + paint.ascent(), Color.BLACK);运行结果如下:[x3ze8xc9zo.png]从运行结果看,似乎和英文字符绘制并无两样

2.4K11

TextView属性和方法大全

一、认识TextView 我们知道前面学习HelloWorld应用程序中就是使用TextView来显示一个文本,接下来首先一起来学习TextView使用方法。...TextView提供了大量XML属性,这些XML属性大部分不仅可适用于TextView,而且适用于它子类(EditText、Button等)。...XML属性 相关方法 说明 android:autoLink setAutoLinkMask(int) 是否将符合指定格式文本转换为单击超链接形式 android:autoText setKeyListener...(KeyListener) 控制是否将URL、E-mail地址等连接自动转换为单击链接 android:capitalize setKeyListener(KeyListener) 控制是否将用户输入文本转换为大写字母...该属性支持如下属性值: integer:指定关联整数输入法 signed:允许输入符号数值输入法 decimal:允许输入小数点数值输入法 android:password setTransformationMethod

2K50

Android – Drawable 详解

用法 在不同情况下有很多绘制类型,设置按钮状态行为,创建伸缩按钮背景和创建复合绘制图层。...这用于创建一个复杂形状,然后可以作为布局或视图背景附加在屏幕上。例如,可以使用绘制形状来更改按钮背景形状,边框和渐变。 一个形状只是一个属性集合,被合并来描述一个背景。...伸缩 Nine-Patch Image NinePatch是一个PNG图像,你可以在该图像中定义当View内容超出正常图像边界时定义拉伸伸展区域。...NinePatch是具有.9.png文件扩展名图像,表示这是一个伸缩PNG图像。该文件与正常PNG文件没有什么不同,除了您将添加细黑线以指示图像垂直和水平“可拉伸”和“填充”区域。...运行时Drawables 我们可以通过访问具有绘制应用视图背景,在我们Java代码运行时访问drawable。

5.2K50

android之Fragment介绍

image.png Fragment Fragment:是Android3.0开始新增概念,意为碎片。Fragment是依赖于Activity,不能独立存在。...优势: 模块化:我们不必把所有代码全部写在Activity中,而是把代码写在各自Fragment中。 重用:多个Activity可以重用一个Fragment。...适配:根据硬件屏幕尺寸、屏幕方向,能够方便地实现不同布局,这样用户体验更好。...Fragment生命周期 image.png onCreateView是创建时候调用,onViewCreated是在onCreateView后被触发事件,前后关系 就是fragment中onCreateView...方法 为Fragment创建视图(加载布局)时调用(给当前fragment绘制UI布局,可以使用线程更新UI) onActivityCreated方法 当Activity中onCreate方法执行完后调用

77620

仿联系人列表页轮子GroupingViewSample

深度截图_选择区域_20180622172445.png 链接地址: https://github.com/nelson1110/GroupingViewSample 1....SliderView 简介:这是一个列表view,继承自Linearlayout,实现水平或垂直布局,主要作用是当手指划过或点击某个里面的item时候会有相应回调 interface ItemListener...>(R.id.item).text = data.toString() } }) 如果没有特殊需求,默认会提供一个item布局,大概长这样 <TextView...GroupDecoration 简介:可以自己控制列表分组规则和分组标题样式,而且可以用xml绘制分组标题 用法: 像所有其他ItemDecoration一样,add到recyclerview上就可以了...: Int): Int //给分组标题绑定数据,groupView为这个需要绘制view,position是当前组第一个item位置 abstract fun onBindGroupView

48110
领券