0
我的问题有点复杂。当它具有值事件侦听器时,是否可以更改对话框片段的内容?我在对话框片段的onCreateDialog()
方法中设置了firebase的值事件侦听器,并且我想在每次更新Firebase时更改文本。根据firebase数据更改周期性更新dialogFragment的内容
是否有可能,如果是的话,它是如何实现的?
我的问题有点复杂。当它具有值事件侦听器时,是否可以更改对话框片段的内容?我在对话框片段的onCreateDialog()
方法中设置了firebase的值事件侦听器,并且我想在每次更新Firebase时更改文本。根据firebase数据更改周期性更新dialogFragment的内容
是否有可能,如果是的话,它是如何实现的?
创建
class ChangeListener(){
TextView tv;
public setView(TextView view){
this.tv = tv;
}
public void onDataChange (String newData){
if(tv!=null){
tv.setText(newData);
}
} }
In Dialog:
@Override
public void onCreateDialog (Bundle savedInstanceStat){
cl = new ChangeListener();
ref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
cl.onDataChanged(snapshot.getValue());
}
}
然后,添加以听者onCreatView
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_dialog, container, false);
View tv = v.findViewById(R.id.text);
cl.seView (tv);
.....
}