首页 > 解决方案 > 从 activitymain 到 mainactivity 的问题链接 ID

问题描述

我想从这个 URL https://swapi.dev/api/films/解析 JSON

这是我的activity_mail.xml

    <ListView
    android:id="@+id/mylist"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

这里是我的 MainActivity

类 MainActivity : AppCompatActivity() {

lateinit var pDialog: ProgressDialog
lateinit var listView: ListView
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    val url="https://swapi.dev/api/films/"
}

inner class AsyncTaskHandler:AsyncTask<String, String, String>() {
    override fun onPreExecute() {
        super.onPreExecute()
        pDialog= ProgressDialog(this@MainActivity)
        pDialog.setMessage("Please Wait")
        pDialog.setCancelable(false)
        pDialog.show()
    }

    override fun doInBackground(vararg url: String?): String {
        //TODO("Not yet implemented")
        val res:String
        val connection=URL(url[0]).openConnection()as HttpURLConnection
        try {
            connection.connect()
            res=connection.inputStream.use { it.reader().use { reader->reader.readText()} }
        }
        finally {
            connection.disconnect()
        }
        return res
    }

    override fun onPostExecute(result: String?) {
        super.onPostExecute(result)
        jsonResult(result)
        if(pDialog.isShowing())
            pDialog.dismiss()
    }

    private fun jsonResult(jsonString: String?) {
        val jsonArray=JSONArray(jsonString)

        val list=ArrayList<MyData>()
        var i = 0
        while (i<jsonArray.length())
        {
            val jsonObject=jsonArray.getJSONObject(i)
            list.add(
                MyData(
                    jsonObject.getString("title"),
                    jsonObject.getInt("episode_id"),
                    jsonObject.getString("opening_crawl"),
                    jsonObject.getString("director"),
                    jsonObject.getString("producer"),
                    jsonObject.getString("release_date")

                )
            )
            i++
        }
        val adapter=ListAdapter(this@MainActivity,list)
        mylist.adapter=adapter
    }
}

}

问题是他没有找到我的列表视图“mylist”。我放了一个 id,但在文件末尾我有这个错误:“未解决的参考:mylist”

标签: androidvisual-studiokotlin

解决方案


也许是这样的?(ListView)(R.id.mylist).adapter=adapter


推荐阅读