Android:从相同布局的另一个XML视图引用XML视图



我试图在xml中引用视图:

<Button
android:id="@+id/button"
android:onClick="@{(v) -> events.userClicked(another_layout_id)}"
.
.
.
android:text="Click me
/>"

其中events是一个变量,userClicked()是一个接受视图的函数,another_layout_id是按钮所在的xml布局中的另一个视图(尽管层次结构不同)。

根据这里的顶部答案:在数据绑定中传递另一个视图作为参数,我应该能够引用another_layout_id,但我收到一个"无法找到标识符";错误。知道为什么吗?

编辑:添加XML代码:

<layout 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">
<data>
<variable
name="state"
type="bindingModel" />
<variable
name="events"
type="DataModel" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="label"/>
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/another_layout_id"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<androidx.constraintlayout.helper.widget.Flow
android:id="@+id/flow_layout"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:flow_horizontalGap="8dp"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
<Button
android:id="@+id/show_all"
style="@style/TextButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="@{(v) -> 
events.userClicked(another_layout_id)}"
android:text="Click me" />

</androidx.constraintlayout.widget.ConstraintLayout>
</layout>

复制的Android数据绑定引用视图,我不得不在camelCase参考视图id而不是蛇。

相关内容

  • 没有找到相关文章

最新更新