亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何獲取 FirebaseListAdapter 中存在的元素計數?

如何獲取 FirebaseListAdapter 中存在的元素計數?

千巷貓影 2023-11-10 15:39:50
我正在使用FirebaseListAdapter它ListView,它工作得很好。我有一個額外的要求來顯示ListView. 我怎么做?我通讀了文檔FirebaseListAdapter,發現有一個方法getCount()應該返回元素的計數。但它總是返回零。下面是我的代碼。我缺少什么?    mAppointmentAdapter = new FirebaseListAdapter<Appointment>(options) {    @Override        public void populateView(View view, Appointment appointment, int position) {            TextView nameTextView = view.findViewById(R.id.app_patient_name_view);            TextView reasonTextView =          ...                 }    };    appointmentListView.setAdapter(mAppointmentAdapter);    // Display count of appointments    int mAppointmentsCount;    mAppointmentsCount = mAppointmentAdapter.getCount();    mAppointmentsCountView.setText(String.valueOf(mAppointmentsCount));ListView需要適配器或適配器中的元素計數。
查看完整描述

1 回答

?
眼眸繁星

TA貢獻1873條經驗 獲得超9個贊

我認為亞歷克斯在這里有正確的想法:當您調用 時,很可能尚未從數據庫加載項目mAppointmentAdapter.getCount(),因此它正確返回0。

populateView正如 Alex 所說,該調用可能應該在內部,或者在適配器的onDataChanged方法中。每當 FirebaseUI 更新數據時都會onDataChanged調用 ,因此這是更新計數器的完美位置:

@Override

public void onDataChanged() {

? int mAppointmentsCount = mAppointmentAdapter.getCount();

? mAppointmentsCountView.setText(String.valueOf(mAppointmentsCount));

}

如果這些知識不允許您解決問題,請編輯您的問題以顯示該調用存在的時間/地點mAppointmentAdapter.getCount(),因為這使我們更有可能提供幫助。


查看完整回答
反對 回復 2023-11-10
  • 1 回答
  • 0 關注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號