2017-04-22 11 views
0

私の質問は幾分複雑です。値のイベントリスナーがある場合、ダイアログフラグメントの内容を変更することは可能ですか?ダイアログフラグメントのonCreateDialog()メソッドでfirebaseの値イベントリスナーをセットアップし、firebaseが更新されるたびにテキストを変更したいと思います。fireFbaseのデータごとに定期的にdialogFragmentの内容を更新する

可能でしょうか?はいの場合、どのように達成できますか?

答えて

0

そして

@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); 
..... 
} 
をonCreatView LISTNERするビューを追加

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()); 
     } 
    } 

を作成

関連する問題