如何使用android数据绑定绑定事件

时间:2016-04-01 01:56:31

标签: android events data-binding

我使用android数据绑定来绑定按钮点击事件,但我无法做到。我需要帮助。 这是我的Xml:

<data>

    <import type="com.test.databindingdemo.MyHandler" />

    <variable
        name="handlers"
        type="MyHandler" />
</data>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
        android:id="@+id/bt"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="@{handlers.handleClick}" />

</LinearLayout>

这是我的代码:

public class MyHandler {
    public void handleClick(View view) {
        Toast.makeText(view.getContext(), "you clicked the view", Toast.LENGTH_LONG).show();
    }
}

这是我的活动:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        MainlayoutBinding mainlayoutBinding=DataBindingUtil.setContentView(this, R.layout.mainlayout);
        mainlayoutBinding.setHandlers(new MyHandler());
    }

1 个答案:

答案 0 :(得分:0)

您发布的代码没有任何问题。为了确保这一点,我使用您的代码创建了Sample Project,它工作正常。单击按钮时会显示Toast消息。