"Player"라는 클래스를 만들었습니다.인 텐트 간의 ArrayList 클래스 전달
버튼을 클릭 할 때마다 새 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()를 시도했지만 번들을 검색하므로 작동하지 않습니다. 아니면 올바른 방법일까요? 하지만 그 묶음으로 무엇을 할 수 있습니까?
시도, 또는 다른 방법은 google의 gson api를 사용하고 개체를 JSONObjects 문자열 형식으로 변환하고 JSONArray를 String 형식으로 보냅니다. 귀하의 활동 사이에 있으므로 대상 활동에서 gson api로 JSONArray를 쉽게 파싱합니다 – Houcine