Android DataBinding 新按钮setOnClickListener

Android DataBinding new button setOnClickListener

我需要使用 Android 相机。 因此我使用以下模板:https://github.com/android/camera-samples/tree/main/Camera2SlowMotion

我在 fragment_camera.xml 中添加了一个 Butten https://github.com/android/camera-samples/blob/main/Camera2SlowMotion/app/src/main/res/layout/fragment_camera.xml

<Button
    android:id="@+id/change_focus_button"
    android:layout_width="115dp"
    android:layout_height="81dp"
    android:text="@string/focusButtonText"
    tools:layout_editor_absoluteX="13dp"
    tools:layout_editor_absoluteY="473dp" />

在 CameraFragment.kt 我现在想在单击按钮时调用一个函数。 因此,据我了解,我需要创建一个 setOnClickListener。

https://github.com/android/camera-samples/blob/main/Camera2SlowMotion/app/src/main/java/com/example/android/camera2/slowmo/fragments/CameraFragment.kt

我考虑在第 309 行添加以下行。这将调用我随后创建的函数。但是“。” fragmentCameraBinding.changeFocusButton 之后一直是红色,不会消失。

fragmentCameraBinding.changeFocusButton.setOnClickListener { chnageFocuslen() } 

我需要更改什么/我需要在哪里添加 OnClickListener?

非常感谢您!

我不得不下载示例,因为我无法从您 post 中的片段中看出问题所在。

问题是 CameraFragment 两个 布局文件,一个在默认文件夹 layout 中,另一个在 layout-land 中用于横向方向。因此,您需要将 change_focus_button XML 添加到两个布局文件中,以使其在通过 CameraFragment.

中的 fragmentCameraBinding 访问时不是 nullable ]