2016-02-09 17 views
7

Google dokümantasyon, değişkenlerin içerdiği mizanpajın içerdiği mizanpaja geçirilebileceğini ancak bunun işe yaramayacağını ancak veri bağlama hatası aldığını söyler **** msg: Tanımlayıcılar, XML dosyasından kullanıcı tanımlı türlere sahip olmalıdır. işleyici eksik.Android Veri Bağlama: düzeni dahil etmek için değişken geçirmeyi değiştir

<layout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:bind="http://schemas.android.com/apk/res-auto"> 

<data> 
    <import type="com.example.FocusChangeHandler"/> 

    <variable 
     name="handler" 
     type="FocusChangeHandler"/> 
</data> 

<!-- Some other views ---> 

    <include 
      android:id="@+id/inputs" 
      layout="@layout/input_fields" 
      bind:handler="@{handler}"/>   
</layout> 

Ve böyle dâhili XML: dahil XML şöyle ben düzeni oluşturulan bağlama sınıfı aracılığıyla dahil gelen Görüntüleme başvurmak açabiliyorum

<layout xmlns:android="http://schemas.android.com/apk/res/android"> 
<EditText 
    android:id="@+id/nameEdit"  
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"  
    android:onFocusChange="@{handler.onFocusChange}"/> 
</layout> 

ama bir değişken geçirmeden hemen gelmez Çalışıyorum

cevap

3

documentation

Ben size dahil düzende bu olmalıdır varsayalım name.xml ve contact.xml hem düzen dosyalarında kullanıcı değişken olmalı, İşte

belirtir :

<data> 
      <variable name="handler" 
        type="FocusChangeHandler"/> 
    </data> 
+0

Komik ama ben bununla oynamayı denedim ve birden çok kez tanımlı değişken hakkında bir hata aldım . Android Studio 2.0 Beta 3 ve Beta 5 arasında bir şey değişmiş gibi görünüyor. – pmellaaho

+0

Birden çok değişkene geçmek mümkün mü? Denedim: ' ' ama bu görünmüyor çalışmak. – clu