Android 如何使用JSONArray?
我在片段中使用json数据。我想将嵌套的jsonArray类型ID用于另一个活动,但我尝试了一些解决方案,但不起作用。我现在该怎么办 HomeFragmentAndroid 如何使用JSONArray?,android,arrays,json,android-intent,kotlin,Android,Arrays,Json,Android Intent,Kotlin,我在片段中使用json数据。我想将嵌套的jsonArray类型ID用于另一个活动,但我尝试了一些解决方案,但不起作用。我现在该怎么办 HomeFragment for (i in 0 until tur!!.length()) { val film = Movie() var jsonObj = tur.getJSONObject(i)
for (i in 0 until tur!!.length()) {
val film = Movie()
var jsonObj = tur.getJSONObject(i)
film.title = jsonObj.getString("title")
film.releaseDate = jsonObj.getString("release_date")
film.posterPath = jsonObj.getString("poster_path")
film.voteAverage = jsonObj.getString("vote_average")
film.overView = jsonObj.getString("overview")
film.genreIds = jsonObj.getJSONArray("genre_ids").toString()
<br/>
**MovieDetailActivity**
var baslik = intent.extras.getString("title")
tvDetayBaslik.text = baslik
var resim = intent.extras.getString("image")
var url = "https://image.tmdb.org/t/p/w500"
var poster = Glide.with(this).asBitmap().load(url + resim).into(imgPosterDetay)
var tarih = intent.extras.getString("date")
tvDetayTarih.text = tarih
var puan = intent.extras.getString("point")
if (puan=="0.0"){
tvDetayPuan.text="Puan yok"
}else {
tvDetayPuan.text = puan.toString()
}
var aciklama = intent.extras.getString("description")
if (aciklama == "") {
tvDetayOverview.text = "Açıklama Yapılmamıştır."
} else {
tvDetayOverview.text = aciklama
}
var turId=intent.extras.getString("id")
tvGenre.text= turId.toString()
for(i在0中直到tur!!.length()){
val film=Movie()
var jsonObj=tur.getJSONObject(i)
film.title=jsonObj.getString(“title”)
film.releaseDate=jsonObj.getString(“发布日期”)
film.posterPath=jsonObj.getString(“海报路径”)
film.voteAverage=jsonObj.getString(“投票平均值”)
film.overView=jsonObj.getString(“overView”)
film.genreIds=jsonObj.getJSONArray(“流派ID”).toString()
**电影活动**
var baslik=intent.extras.getString(“标题”)
tvDetayBaslik.text=baslik
var resim=intent.extras.getString(“图像”)
变量url=”https://image.tmdb.org/t/p/w500"
var poster=Glide.with(this).asBitmap().load(url+resim).into(imgPosterDetay)
var tarih=intent.extras.getString(“日期”)
tvDetayTarih.text=tarih
var puan=intent.extras.getString(“点”)
如果(puan==“0.0”){
tvDetayPuan.text=“Puan yok”
}否则{
tvDetayPuan.text=puan.toString()
}
var aciklama=intent.extras.getString(“说明”)
如果(aciklama==“”){
tvDetayOverview.text=“Açıklama Yapılmamıtır。”
}否则{
tvDetayOverview.text=aciklama
}
var turId=intent.extras.getString(“id”)
tvGenre.text=turId.toString()
您可以将数据保留为对象,然后使用PutParcelableArrayList
首先在arraylist中的元素上实现Parcelable
shoort示例:
ArrayList<ZAP> zapotrzebowania = new ArrayList<ZAP>();
为了将JSONArray从一个活动传递到另一个活动,您需要将JSONArray转换为字符串,然后将其作为附加项放入Intent中。在接收方,从附加项获取字符串数据并将其转换为JSONArray 关于将嵌套的jsonArray ID传递给另一个活动,有两个选项:
将jsonarray转换为其字符串值,将其作为额外值放在intent中,在下一个活动中接收它。最后,将其放回jsonarray对象中。
datatodoc.putParcelableArrayList("dokument", zapotrzebowania);