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

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

帶數組列表的 NumberPicker

帶數組列表的 NumberPicker

RISEBY 2022-07-27 16:44:03
我正在嘗試在數字選擇器中添加數據列表。我正在使用以下庫:https ://github.com/ShawnLin013/NumberPicker作為數字選擇器。這是它在我的應用程序中的顯示方式:如您所見,它的兩側帶有 [ ] 并用逗號分隔,我該如何消除它?我想這就是問題所在。我正在從 FIREBASE 數據庫中獲取信息。我的代碼:IList = new ArrayList<>();DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Information").child( uploads.getIdPost() )        .child("CBS1");reference.addValueEventListener(new ValueEventListener() {    @Override    public void onDataChange(DataSnapshot dataSnapshot) {        IList.clear();        for (DataSnapshot snapshot : dataSnapshot.getChildren()){            IList.add(snapshot.getKey());            String[] data = {String.valueOf( IList )};            numberPicker.setMinValue(data.length);            numberPicker.setMaxValue(data.length);            numberPicker.setDisplayedValues(data);            numberPicker.setValue(data.length);            numberPicker.setWrapSelectorWheel(false);        }    }
查看完整描述

2 回答

?
天涯盡頭無女友

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

這條線


String[] data = {String.valueOf( IList )};

String.valueOf( IList )將返回一個字符串,其值為[CB, CC]. 這就是您在 NumberPicker UI 上看到它的原因。


解決方案:將字符串數組列表轉換為字符串數組。


IList.add(snapshot.getKey());


// Convert string arraylist to string array.

String[] data = new String[list.size()];

data = list.toArray(data);


// Set minValue is 1 instead of data.length

numberPicker.setMinValue(1); 

numberPicker.setMaxValue(data.length);

numberPicker.setDisplayedValues(data);

numberPicker.setValue(data.length);

numberPicker.setWrapSelectorWheel(false);

更新:我想這就是你的意思


reference.addValueEventListener(new ValueEventListener() {

    @Override

    public void onDataChange(DataSnapshot dataSnapshot) {

        IList.clear();


        for (DataSnapshot snapshot : dataSnapshot.getChildren()) {

            IList.add(snapshot.getKey());

        }


        // Convert string arraylist to string array.

        String[] data = new String[IList.size()];

        data = IList.toArray(data);


        numberPicker.setMinValue(0);

        numberPicker.setMaxValue(data.length - 1);

        numberPicker.setDisplayedValues(data);

        numberPicker.setValue(0);

        numberPicker.setWrapSelectorWheel(false);

    }

}


查看完整回答
反對 回復 2022-07-27
?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

這是因為以下代碼:

String[] data = {String.valueOf( IList )};

其中String.valueOf返回對象的字符串表示形式IList。

您需要使用類似toArray的東西。


查看完整回答
反對 回復 2022-07-27
  • 2 回答
  • 0 關注
  • 170 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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