向ArrayList添加值时出现问题

时间:2018-10-22 17:04:05

标签: arraylist kotlin add

我正在尝试使用Kotlin将从JSON中获取的url值(imgURL变量)添加到ArrayList中,但是无论如何,在for循环的范围内,无论将newArrayURLs数组声明为函数变量。知道为什么吗?

private fun getJsonObjectImg(Url: String): ArrayList<String>{

    var paths: ArrayList<String> =ArrayList()

    val params = HashMap<String, String>()
    var newArrayURLs = ArrayList<String>()

    val stringRequest = object : StringRequest(Request.Method.POST, Url, Response.Listener { s ->
        try {

            val array = JSONObject(s)
            var imagesArray = array.getJSONArray("images")

            for(i in 0..imagesArray.length() -1 ){
                var imgURL = imagesArray.getJSONObject(i).getString("fileName")
                newArrayURLs.add(imgURL)
                paths.add(imgURL)

            }

            Log.d("pathsin TRY", paths.count().toString())

        } catch(e:JSONException){
            Log.d("ERROR------", e.toString())

            null
        }

        }, Response.ErrorListener {
        error: VolleyError? ->
        try {
            Log.d("ERROR======","V")
        } catch (e: JSONException){
            e.printStackTrace()
        }
    }) {
        override fun getParams(): Map<String, String> = mapOf("uploadedBy" to id)

    }
    val  requestQueue = Volley.newRequestQueue(this)
    requestQueue.add<String>(stringRequest)

    return newArrayURLs

}

0 个答案:

没有答案