2017-04-10 1 views

Antwort

0

Sie um es durch die Definition einer eigenen Bindung Adapter bekommen konnte: Sie

@BindingAdapter("android:text") 
public static void setDoubleToText(TextView view, double value) { 
    String text = ""; 
    if (value != 0) { 
     text = String.valueOf(value); 
    } 
    view.setText(text); 
} 

Zusätzlich könnte auch müssen die inverse Verhalten definieren:

@InverseBindingAdapter(attribute = "android:text") 
public static double getDoubleFromText(TextView view) { 
    try { 
     return Double.parseDouble(view.getText().toString()); 
    } catch (Exception e) { 
     return 0.0; 
    } 
} 
0

Tynn Die Antwort war fast da, aber die Parameter sollte wie unten sein, und ich brauchte nicht das inverse Bindemittel.

@BindingAdapter("android:text") 
public static void setText(EditText editText, String value) { 

    if (value == null) { 
     return; 
    } 
    if (value.equals("0.0")) { 
     editText.setText(""); 
    } else { 
     editText.setText(value); 
    } 
} 
Verwandte Themen