第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Firebase Android ListView未顯示

Firebase Android ListView未顯示

墨色風(fēng)雨 2020-02-03 14:18:43
用戶登錄后,我試圖在主菜單屏幕的列表視圖上顯示Firebase實(shí)時(shí)數(shù)據(jù)庫中的數(shù)據(jù)。該應(yīng)用程序正在運(yùn)行,但未顯示數(shù)據(jù)。這是我數(shù)據(jù)庫中的數(shù)據(jù)現(xiàn)在為代碼。MainMenu.java在OnCreate()上調(diào)用此函數(shù)。 public void makeItem ()    {        lv = findViewById(R.id.listView);        db = FirebaseDatabase.getInstance().getReference();        helper = new FirebaseHelper(db);        adapter= new AdapterItem(this,helper.retrive());        lv.setAdapter(adapter);    } CustomListAdapter.javapublic class CustomListAdapter{    private String ItemName;    private String Quantity;    private String SerialNo;    private String SupplierName;    private String SupplierEmail;    private String SupplierPhone;    public CustomListAdapter(){    }    public CustomListAdapter (String ItemName,String Quantity,String SerialNo,String SupplierName,String SupplierEmail,String SupplierPhone)    {        this.ItemName = ItemName;        this.Quantity = Quantity;        this.SerialNo = SerialNo;        this.SupplierName = SupplierName;        this.SupplierEmail = SupplierEmail;        this.SupplierPhone = SupplierPhone;    }    public void setItemName (String ItemName)    {        this.ItemName = ItemName;    }    public String getItemName ()    {        return ItemName;    }    public void setQuantity (String Quantity)    {        this.Quantity = Quantity;    }    public String getQuantity ()    {        return Quantity;    }    public void setSerialNo (String SerialNo)    {        this.SerialNo = SerialNo;    }    public String getSerialNo ()    {        return SerialNo;    }    public void setSupplierName (String SupplierName)    {        this.SupplierName = SupplierName;    }    public String getSupplierName()    {        return SupplierName;    }    public void setSupplierEmail (String SupplierEmail)    {        this.SupplierEmail = SupplierEmail;    }    public String getSupplierEmail() {        return SupplierEmail;    }    public void setSupplierPhone (String SupplierPhone)    {        this.SupplierPhone = SupplierPhone;    }
查看完整描述

1 回答

?
慕桂英4014372

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超13個(gè)贊

代碼中的問題在于,您的CustomListAdapter類中有一個(gè)名為的字段,ItemName但您使用的是一個(gè)名為getter的getter getItemName(),這是不正確的,因?yàn)镕irebase在數(shù)據(jù)庫中查找的名為itemNameand not 的字段ItemName??吹叫慽字母還是大寫字母I?


有兩種方法可以解決此問題。第一個(gè)方法是根據(jù)Java命名約定重命名字段來更改模型類。因此,您的模型類應(yīng)如下所示:


public class CustomListAdapter {

    private String itemName, quantity, serialNo, supplierName, supplierEmail, supplierPhone;


    public CustomListAdapter() {}


    public CustomListAdapter(String itemName, String quantity, String serialNo, String supplierName, String supplierEmail, String supplierPhone) {

        this.itemName = itemName;

        this.quantity = quantity;

        this.serialNo = serialNo;

        this.supplierName = supplierName;

        this.supplierEmail = supplierEmail;

        this.supplierPhone = supplierPhone;

    }


    public String getItemName() { return itemName; }

    public String getQuantity() { return quantity; }

    public String getSerialNo() { return serialNo; }

    public String getSupplierName() { return supplierName; }

    public String getSupplierEmail() { return supplierEmail; }

    public String getSupplierPhone() { return supplierPhone; }

}

在此示例中看到,存在private字段和公共獲取器。還有一個(gè)更簡(jiǎn)單的解決方案,可以像這樣直接在公共字段上設(shè)置值:


public class CustomListAdapter {

    public String itemName, quantity, serialNo, supplierName, supplierEmail, supplierPhone;

}

現(xiàn)在,只需刪除當(dāng)前數(shù)據(jù),然后使用正確的名稱再次添加即可。僅在測(cè)試階段,此解決方案才有效。


還有第二種方法,即使用annotations。因此,如果您更喜歡使用私有字段和公共getter,則應(yīng)僅在getter之前使用PropertyName批注。因此,您的CustomListAdapter課程應(yīng)如下所示:


public class CustomListAdapter {

    private String ItemName;

    private String Quantity;

    private String SerialNo;

    private String SupplierName;

    private String SupplierEmail;

    private String SupplierPhone;


    public CustomListAdapter() {}


    public CustomListAdapter(String itemName, String quantity, String serialNo, String supplierName, String supplierEmail, String supplierPhone) {

        ItemName = itemName;

        Quantity = quantity;

        SerialNo = serialNo;

        SupplierName = supplierName;

        SupplierEmail = supplierEmail;

        SupplierPhone = supplierPhone;

    }


    @PropertyName("ItemName")

    public String getItemName() { return ItemName; }

    @PropertyName("Quantity")

    public String getQuantity() { return Quantity; }

    @PropertyName("SerialNo")

    public String getSerialNo() { return SerialNo; }

    @PropertyName("SupplierName")

    public String getSupplierName() { return SupplierName; }

    @PropertyName("SupplierEmail")

    public String getSupplierEmail() { return SupplierEmail; }

    @PropertyName("SupplierPhone")

    public String getSupplierPhone() { return SupplierPhone; }

}


查看完整回答
反對(duì) 回復(fù) 2020-02-03
  • 1 回答
  • 0 關(guān)注
  • 830 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)