使用两种方式绑定格式化编辑文本文本
Formatting edit text text with two way binding
我正在使用两种方式绑定编辑文本 属性 如下所示
android:text="@={model.price}"
然后在模型中 class 我正在做以下事情:
public class CreateCourse extends BaseObservable {
private String price = "";
@Bindable
public String getPrice() {
return "$ " + price;
}
public void setPrice(String price) {
if(this.price != price)
{
this.price = price;
notifyPropertyChanged(BR.price);
enableButton();
}
}
}
这造成了一种无限循环,当我打开屏幕时,我的编辑文本中出现了无限 $。
因此,如果这不起作用,我们如何使用双向绑定格式化编辑文本字符串
这对我有用:
private String price = "$ ";
然后在setter方法中:
public void setPrice(String price) {
if(!this.price.equals(price))
{
if(price.isEmpty())
this.price = "$ ";
else
this.price = price;
notifyPropertyChanged(BR.price);
enableButton();
}
}
我正在使用两种方式绑定编辑文本 属性 如下所示
android:text="@={model.price}"
然后在模型中 class 我正在做以下事情:
public class CreateCourse extends BaseObservable {
private String price = "";
@Bindable
public String getPrice() {
return "$ " + price;
}
public void setPrice(String price) {
if(this.price != price)
{
this.price = price;
notifyPropertyChanged(BR.price);
enableButton();
}
}
}
这造成了一种无限循环,当我打开屏幕时,我的编辑文本中出现了无限 $。
因此,如果这不起作用,我们如何使用双向绑定格式化编辑文本字符串
这对我有用:
private String price = "$ ";
然后在setter方法中:
public void setPrice(String price) {
if(!this.price.equals(price))
{
if(price.isEmpty())
this.price = "$ ";
else
this.price = price;
notifyPropertyChanged(BR.price);
enableButton();
}
}