所以我有一个无法处理的小问题...检查代码并阅读 Logcat,有什么想法吗?
代码:
for(int i = 0; i < jArray.length(); ++i){
JSONObject json_data = jArray.getJSONObject(i);
//
String paskaita = json_data.getString("paskaita");
String laikas = json_data.getString("laikas");
String savaite = json_data.getString("savaite");
String auditorija = json_data.getString("auditorija");
String destytojas = json_data.getString("destytojas");
String dalykas = json_data.getString("dalykas");
String tipas = json_data.getString("tipas");
//Just adding view
TextView pask = (TextView) Item.findViewById(R.id.paskaita);
pask.setText(paskaita);
TextView laik = (TextView) Item.findViewById(R.id.laikas);
laik.setText(laikas);
TextView sav = (TextView) Item.findViewById(R.id.savaite);
sav.setText(savaite);
TextView dest = (TextView) Item.findViewById(R.id.destytojas);
dest.setText(destytojas);
TextView aud = (TextView) Item.findViewById(R.id.auditorija);
aud.setText(auditorija);
TextView dal = (TextView) Item.findViewById(R.id.dalykas);
dal.setText(dalykas);
TextView tip = (TextView) Item.findViewById(R.id.tipas);
tip.setText(tipas);
ln.addView(Item);
}
Logcat 输出:
12-07 19:00:27.558: E/AndroidRuntime(280): java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
最佳答案
好吧,它与您的 JSONObject 无关。
Logcat 说明了一切。您添加一个已经有父级的 TextView。所以你可能想创建一个布局,并在你的 for 循环中
for(int i = 0; i < jArray.length(); ++i){
JSONObject json_data = jArray.getJSONObject(i);
//
String paskaita = json_data.getString("paskaita");
String laikas = json_data.getString("laikas");
String savaite = json_data.getString("savaite");
String auditorija = json_data.getString("auditorija");
String destytojas = json_data.getString("destytojas");
String dalykas = json_data.getString("dalykas");
String tipas = json_data.getString("tipas");
// Create a new view every time.
View Item = View.inflate(ln.getContext(), layoutID, null);
//Just adding view
TextView pask = (TextView) Item.findViewById(R.id.paskaita);
pask.setText(paskaita);
TextView laik = (TextView) Item.findViewById(R.id.laikas);
laik.setText(laikas);
TextView sav = (TextView) Item.findViewById(R.id.savaite);
sav.setText(savaite);
TextView dest = (TextView) Item.findViewById(R.id.destytojas);
dest.setText(destytojas);
TextView aud = (TextView) Item.findViewById(R.id.auditorija);
aud.setText(auditorija);
TextView dal = (TextView) Item.findViewById(R.id.dalykas);
dal.setText(dalykas);
TextView tip = (TextView) Item.findViewById(R.id.tipas);
tip.setText(tipas);
ln.addView(Item);
}
关于java - Android:查看 - child 已经有 parent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20445149/