Закругление уголков у кастомного view

418
18 февраля 2017, 05:46

Здравствуйте. Создал кастомный view. В нем рисуются прямоугольники rect. Необходимо левый нижний угол закруглить. На рисунке обозначено красным цветом что нужно сделать. Каким образом можно сделать такое скругление?

Answer 1

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

    /** Path в поле, чтобы не было инициализации в onDraw(). */
    private final Path eventPath = new Path();
    /** Радиус закругления. */
    private int eventRadius = 3;

    private void drawRoundRect(float left, float top, float right, float bottom,
                               Paint paint, Canvas canvas) {
        eventPath.moveTo(left, top);
        eventPath.lineTo(right, top);
        eventPath.lineTo(right, bottom);
        eventPath.lineTo(left + eventRadius, bottom);
        eventPath.quadTo(left, bottom, left, bottom - eventRadius);
        eventPath.lineTo(left, top + eventRadius);
        eventPath.quadTo(left, top, left + eventRadius, top);
        canvas.drawPath(eventPath, paint);
        eventPath.reset();
    }
Answer 2

В лейауте надо использовать CardView:

<android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    app:cardCornerRadius="10dp"
    >
    <!-- blah-blah-->
</android.support.v7.widget.CardView>

Радиус угла закругления задается атрибутом app:cardCornerRadius

READ ALSO
Selenium Dropdown menu как кнопка

Selenium Dropdown menu как кнопка

Доброго дня! Есть сайт, написанный на ангуляреВ нем есть кнопка выбора пола

421
GIT или Maven? Что выбрать для Java?

GIT или Maven? Что выбрать для Java?

Здравствуйте, вопрос может быть не совсем корректный, но всё же интересно мнения бывалыхРаботаю с Java, когда начал изучение не думал о таких...

275
Зачем нужен maven?

Зачем нужен maven?

Здравствуйте, очень хотелось бы узнать, много пересмотрел и перечитал, но не могу понятьЗачем нужен Maven, если есть IDE - Eclipse, Netbeans и т

380
Замена фрагмента на фрагмент

Замена фрагмента на фрагмент

Есть фрагмент Fragment1, на него с помощью RecyclerView выводятся Button в адаптере это выглядит следующим образом:

395