[英]change text of material chip
我有一個芯片組,其中正在動態添加芯片。 當芯片文本匹配“選擇日期”時,我必須更改芯片文本。 但在取消選擇芯片時,芯片文本應替換為原始文本。
但是當它被取消選擇時我無法找到芯片ID。 我正在使用下面的代碼來做同樣的事情。 請建議我該怎么做。
chipGroup.setOnCheckedChangeListener(new ChipGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(ChipGroup chipGroup, int i) {
chipchoose = chipGroup.findViewById(i);
if (chipchoose != null){
String chipnamee= chipchoose.getText().toString();
if (chipnamee.equalsIgnoreCase("Choose Date")){
openDialogCalender();
}
}
}
});
取消選擇芯片時,chipchoose 為 null。
那么, ChipGroup
上的Listener
只能監聽Checked state,對於監聽Unchecked state 設置Listener
on target Chip
。
由於您以編程方式添加Chip
,因此您可以為每個Chip
添加一個偵聽器。
就像是:
chip.setOnCheckedChangeListener { chip, isChecked ->
if (!isChecked){
//....chip.text = "...." //replace the text
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.