В библиотеке компонентов материалов вы можете использовать MaterialShapeDrawable
до для рисования пользовательских фигур .
С помощью TextView вы можете сделать :
<TextView
android:id="@+id/tv_rounded"
android:paddingLeft="8dp"
../>
Затем создайте MaterialShapeDrawable
. Что-то вроде:
TextView textview = findViewById(R.id.tv_rounded);
ShapeAppearanceModel shapeAppearanceModel = new ShapeAppearanceModel()
.toBuilder()
.setAllCorners(CornerFamily.ROUNDED,radius)
.setBottomRightCorner(CornerFamily.ROUNDED,0)
.setBottomLeftCorner(CornerFamily.ROUNDED,0)
.build();
MaterialShapeDrawable shapeDrawable = new MaterialShapeDrawable(shapeAppearanceModel);
shapeDrawable.setStroke(2.0f, ContextCompat.getColor(this,R.color.xxxx));
shapeDrawable.setFillColor(ContextCompat.getColorStateList(this,R.color.xxx));
ViewCompat.setBackground(textview,shapeDrawable);