簡體   English   中英

如何在吐司中顯示數組列表項?

[英]how to display arraylist items in toast?

我正在使用 json 解析,我發送了五封電子郵件和五個姓名,作為回應,它給出了

{
    "invitefriend": [
        {

            "message": "Friend Request sent to : abc"
        },
        {

            "message": "Friend Request sent to : def"
        }
    ]
}

現在我正在嘗試的是我想在吐司中獲得 abc 和 def,但它分別給出

 JSONArray jsonary=json.getJSONArray("invitefriend");

            for (int i = 0; i < jsonary.length(); i++) {
                JSONObject c = jsonary.getJSONObject(i);
                // creating new HashMap
                HashMap<String, String> map = new HashMap<String, String>();
                // adding each child node to HashMap key => value
                // map.put(INTERESTACCEPT_USER_ID, c.getString(INTERESTACCEPT_USER_ID));
                map.put(TAG_SUCCESS_INVITE,c.getString(TAG_SUCCESS_INVITE));
                map.put(TAG_SUCCESS_MESSAGE, c.getString(TAG_SUCCESS_MESSAGE));

                ArrayList<String> msgs=new ArrayList<String>();
                msgs=map.put(TAG_SUCCESS_MESSAGE, c.getString(TAG_SUCCESS_MESSAGE));
                System.out.println("MESSAGE : " + msg);

                // adding HashList to ArrayList

               getActivity().runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Toast.makeText(getActivity(),""+msgs, Toast.LENGTH_LONG).show();
                    }
                });
                data.add(map);
            }

嘗試這個,

   JSONArray jsonary=json.getJSONArray("invitefriend");
    ArrayList<String> msgs;
            for (int i = 0; i < jsonary.length(); i++) {
                JSONObject c = jsonary.getJSONObject(i);
                // creating new HashMap
                HashMap<String, String> map = new HashMap<String, String>();
                // adding each child node to HashMap key => value
                // map.put(INTERESTACCEPT_USER_ID, c.getString(INTERESTACCEPT_USER_ID));
                map.put(TAG_SUCCESS_INVITE,c.getString(TAG_SUCCESS_INVITE));
                map.put(TAG_SUCCESS_MESSAGE, c.getString(TAG_SUCCESS_MESSAGE));

                msgs = new ArrayList<String>(map.values());

                System.out.println("MESSAGE : " + msgs);

                // adding HashList to ArrayList


                data.add(map);
            }
           getActivity().runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                         Toast.makeText(getActivity(),msgs,Toast.LENGTH_LONG).show();
                    }
                });

您將獲得多個Toast s,因為您在for循環內進行了Toast ing。 只需將該調用移動到循環外:

JSONArray jsonary=json.getJSONArray("invitefriend");
ArrayList<String> msgs=new ArrayList<String>();
String msg = null;

for (int i = 0; i < jsonary.length(); i++) {
    JSONObject c = jsonary.getJSONObject(i);
    // creating new HashMap
    HashMap<String, String> map = new HashMap<String, String>();
    // adding each child node to HashMap key => value
    // map.put(INTERESTACCEPT_USER_ID, c.getString(INTERESTACCEPT_USER_ID));
    map.put(TAG_SUCCESS_INVITE,c.getString(TAG_SUCCESS_INVITE));
    map.put(TAG_SUCCESS_MESSAGE, c.getString(TAG_SUCCESS_MESSAGE));

    msg=map.put(TAG_SUCCESS_MESSAGE, c.getString(TAG_SUCCESS_MESSAGE));
    msgs.add(msg);
    System.out.println("MESSAGE : " + msg);

    // adding HashList to ArrayList
    data.add(map);
}

getActivity().runOnUiThread(new Runnable() {
        @Override
        public void run() {
            Toast.makeText(getActivity(), msgs.toString(), Toast.LENGTH_LONG).show();
        }
    });

此外,我們還定義了ArrayList msgs來收集響應消息,我們直接使用msgs.toString() Toast

你必須做 ""+array list 然后它會在 toast 中顯示所有數組列表項。 或者,如果您需要一個一個,然后使用一個具有數組列表長度的 for 循環,您只需添加數組列表[i]like

for (int i=0;i<=arraylist.length;i++){

        Toast.makeText(getContext(),arraylist[i],Toast.LENGTH_SHORT).show();
    }

像這樣嘗試。 我認為它有幫助

featured_list = new ArrayList<Featured>();
for (int i = 0; i < jarray.length(); i++) {
JSONObject object = jarray.getJSONObject(i);
Toast.makeText(getApplicationContext(), object.getString("thumb").toString(), Toast.LENGTH_LONG).show();
 }               

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM