android - 如何有一个圆形的 TextView

标签 android android-layout textview

我一直在尝试制作一个循环TextView。它是一个圆圈,我想在其中容纳圆形气泡上方的整个空间,如下图所示。

请看附件。

Circular bubble with text in side

在这张图片中,我们有一个带有圆形文字的圆形气泡。 我已经尝试将椭圆形 .xml 设置为 TextView 的背景,但仍然没有运气。

编辑:

随着文本长度的增加。它必须缩小尺寸以适合圆圈内。这是最难考虑的部分。

最佳答案

您需要创建一个自定义 View ,可能从TextView扩展,将圆圈设置为背景图像,并根据文本的宽度。

要计算字符串的宽度,请参阅 How to calculate string font width in pixels?

当然需要一些数学和计算来测量每行的可用空间;但我认为这是唯一的方法,因为没有标准组件可以做到这一点。

要将文本放置到 View 上,请使用 Canvas classdrawText .

关于android - 如何有一个圆形的 TextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11293866/

相关文章:

android - iPhone 垂直居中问题

android - 相对布局内的文本水平对齐方式

android - ImageSpan.ALIGN_BASELINE 当 TextView 有 lineSpacing 时

android - Facebook SDK 4.6.0 FacebookCallback 从未被调用

java - 是否有标准方法可以在 Android 上完成本地化日期组件,例如 1s、1m、1h、1d、1w、1week 等

android - AppBarLayout 中的 SwipeRefreshLayout 不包装内容

android - 上下文菜单上的图标未显示?

android - 更新小部件中的 textView

java - 仅以编程方式更改 TextView 中某些文本的背景颜色

android - GreenDao 深度查询 n :m relationships