Невозможно выполнить щелчок на пользовательском представлении, надутом поверх android Canvas? - PullRequest
0 голосов
/ 17 января 2020

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

Вот как я раздуваю пользовательский макет

 val inflater = LayoutInflater.from(context)
            view = inflater.inflate(R.layout.custom_marked_image_dialog, this)
            view.measure(MeasureSpec.getSize(view.measuredWidth), 
            MeasureSpec.getSize(view.measuredHeight))
            view.layout(400, 400, 400, 400)
            canvas.save()
            canvas.translate(x, y)
            view.draw(canvas)
            canvas.restore()

Это мой пользовательский макет

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@color/white"
    android:orientation="vertical">

    <LinearLayout
        android:id="@+id/groupEditComment"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingBottom="@dimen/spacing_half_8">

        <ImageView
            android:id="@+id/comment_icon"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="@dimen/spacing_standard_16"
            android:src="@drawable/ic_baseline_comment_24px" />

        <TextView
            style="@style/FS_Text_Button_Dialog_Box"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:paddingStart="@dimen/spacing_half_8"
            android:paddingEnd="@dimen/button_padding_16"
            android:text="@string/edit_comment" />
    </LinearLayout>
</LinearLayout>

1 Ответ

0 голосов
/ 04 февраля 2020

Чтобы включить взаимодействие с представлением, вам нужно добавить view к родителю ViewGroup и не делать view.draw(canvas)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...