I am trying to test data binding as given in the guide here. I have included this in my build.gradle file (of module app) :
compileSdkVersion 'android-MNC'
buildToolsVersion '23.0.0 rc2'
In the project build.gradle file, I have included this in my dependencies :
classpath "com.android.tools.build:gradle:1.3.0-beta2"
classpath "com.android.databinding:dataBinder:1.0-rc0"
The layout file is exactly the same as the one given in the guide.
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable name="user" type="com.example.User"/>
</data>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.firstName}"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.lastName}"/>
</LinearLayout>
</layout>
Initially it gave an error Element layout does not have the required attribute layout_width and layout_height
.
I tried to fix it by assigning match_parent to both. Then I got the error
Error parsing XML: duplicate attribute
on the lines where i assigned layout_height
and layout_width
to the linear layout.
Again I tried to fix this by removing these attributes. Now every time I try to compile, I see this- error: package my.package.name.databinding
does not exist.
The code completion is working perfectly in my Fragment where I am trying to use this layout.
So what did I miss ?