Я создаю калькулятор Domino для своих друзей, и он отлично работает, я передаю имена игроков от первого действия (действие имен игроков) в Основное действие, где программа рассчитывает количество очков за матч, пока не достигнет ограничение (151 балл) и победный звук будет звучать, и появится сообщение, однако я работаю над созданием нового макета, который будет показывать выигрыши для каждого игрока в день, поэтому я создал новую активность (активность игроков) и нажал те же имена, что и для INTENT и PUT EXTRA, теперь я потерял, я не знаю, какой тип контейнера использовать для отображения имен игроков вместе со счетом, и как запретить приложению повторять одно и то же имя игрока в списке Я использовал ArrayList со списком, я могу привести имя к списку, и они выглядят хорошо, но каждый раз, когда я возвращаюсь к активности выбора команды, Arraylist перезаписывает предыдущие имена и показывает только имена новых игроков.
Мне нужна помощь по: - 1- какой контейнер нам e с минимальным количеством кодов, в моем случае сейчас я использую listview.
2- Как запретить Arraylist перезаписывать свои данные.
3- Я планирую поставить счет перед каждым именем это работает в виде списка? Могу ли я использовать несколько списков просмотра, чтобы показать счет и имена и исправить их, чтобы они двигались вместе?
Вот мои действия с оценками: -
package com.cupheadcorp.domeno;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import java.util.ArrayList;
public class Activity_players_Score extends AppCompatActivity {
ArrayAdapter<String> aa;
ArrayList<String> data = new ArrayList<String>();
ArrayList<String> dataold = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate( savedInstanceState );
setContentView( R.layout.activity_players__score );
Bundle bundle = getIntent().getExtras();
String player1 = bundle.getString("player1");
String player2 = bundle.getString("player2");
String player3 = bundle.getString("player3");
String player4 = bundle.getString("player4");
final ListView listView2 =findViewById( R.id.listteam2 );
if (!data.contains( player1 )){data.add( player1 );}
if (!data.contains( player2 )){data.add( player2 );}
if (!data.contains( player3 )){data.add( player3 );}
if (!data.contains( player4 )){data.add( player4 );}
dataold.addAll( data );
aa = new ArrayAdapter<String>(Activity_players_Score.this,android.R.layout.simple_list_item_1, data);
listView2.setAdapter(aa);
}
@Override
public void onStart () {
super.onStart();
}
}