Создание двух пользовательских кнопок

Может кто-нибудь, пожалуйста, помогите мне создать пользовательские кнопки, как показано ниже? Является ли это возможным? Много раз искали и смогли найти только некоторые вещи, которые снова оказываются rectangular/square shapes. Но я хочу, чтобы две кнопки были triangular и располагались друг на друге и можно было нажимать только на их отдельные занятые области. Оценены фрагменты кода.

enter image description here

Ответ 1

Вы можете сделать это, расширив View и подклассифицировав метод onTouchEvent, например

public class BottomLeftTriangleButton extends View {

    // Copy superclass contructors

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        if (event.getX() / getWidth() < event.getY() / getHeight()) {
            return super.onTouchEvent(event);
        }
        return false;
    }

}

Таким образом, ваш пользовательский просмотр только перехватывает клики в нижней левой области, соответствующей вашей области "кнопка 2". Вы можете сделать другую зону кликабельной, изменив значение "<". знак " > ".

Затем поместите 2 вида в один и тот же FrameLayout, и все готово.