Как иметь круглый TextView

Я пытаюсь сделать круговой TextView . Его круг, в котором я хочу разместить все пространство над круговым пузырьком, как показано на рисунке ниже.

Пожалуйста, см. Прикрепленное изображение.

Круговой пузырь с текстом в стороне

На этом изображении у нас есть круговой пузырь с круговым текстом. Я уже пробовал задавать овальную форму .xml качестве фона TextView но до сих пор не повезло.

Редактировать:

По мере увеличения длины текста. Он должен уменьшаться по размеру, чтобы поместиться внутри круга. Это труднее всего думать.

Solutions Collecting From Web of "Как иметь круглый TextView"

Вам необходимо создать пользовательский вид, который , вероятно, будет расширяться из TextView , задав круг как фоновое изображение и вычислив ширину текста / сломав строки вручную в соответствии с шириной текста.

Чтобы рассчитать ширину строки, см. Раздел Как рассчитать ширину шрифта строки в пикселях?

Конечно, требуется математика и расчеты для измерения свободного места на линию; Но я думаю, что это единственный способ, поскольку для этого нет стандартного компонента.

Чтобы поместить текст в представление, используйте drawText класса Canvas .