【发布时间】:2013-09-02 11:22:57
【问题描述】:
我创建了一个名为“Player”的类。
public class Player{
public String name;
public int score;
}
每次我单击一个按钮时,都会生成一个新的 TextView 以及一个新的 Player 类。这是代码:
private TextView createNewTextView (String text){
final LayoutParams lparams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
final TextView newTextView = new TextView(this);
newTextView.setLayoutParams(lparams);
newTextView.setText(text);
Player newPlayer = new Player();
newPlayer.name = text;
newPlayer.score = 0;
players.add(newPlayer);
zacniIgro.putExtra("players", (ArrayList<Player>) players);
return newTextView;
}
这是正确的做法吗?我认为有一个小缺陷,因为每次单击按钮时,都会在“newPlayer”标签下添加一个新播放器。我该如何解决这个问题?
我的主要问题是这个;如何在第二个活动中“解包”ArrayList,以便我可以使用 ArrayList 的每个元素进行操作?我试过 getStringArrayListExtra() 但它不起作用。我也试过 getExtras() 但这也不起作用,因为它检索一个包。或者这是正确的方法?但是我该怎么处理这个捆绑包呢?
【问题讨论】:
-
尝试实现
Parceable,或者另一种方法是使用google的gson api并将您的对象转换为字符串格式的JSONObjects,并在您的活动之间发送一个字符串格式的JSONArray,因此,在目标 Activity 中,您将使用 gson api 轻松解析 JSONArray
标签: java android eclipse class arraylist