Я работаю над своим первым мобильным приложением.пользователь должен ввести имя в тексте редактирования, и, нажав кнопку «Создать», новый элемент добавляется в представление списка со своей собственной активностью.проблема заключается в том, чтобы все элементы, созданные пользователем, имели один и тот же шаблон xml, но разница будет зависеть от ввода пользователя в каждом действии.
я делаю новое действие, которое начинается при нажатии любого элемента, но я обнаружил, что любой ввод, введенный мной в одном действии, был выполнен во всех действиях всех элементов в представлении списка!
ArrayList < String > topsList = new ArrayList < String > ();
ArrayAdapter topsAdapter;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() {@Override
public void onClick(View view) {
applyName();
}
});
public void applyName() {
EditText edt = (EditText) findViewById(R.id.insertTopEdtxt); //edit
text
for the user input
String name = edt.getText().toString(); //variable that carry the
user input
topsList.add(name); //add the input to the array list
initializeAdapter(); // must use adapter for the list view(xml file)
public void initializeAdapter() { //Adapter setup
topsAdapter = new ArrayAdapter < String > (this, android.R.layout.simple_list_item_1, topsList);
ListView layout = (ListView) findViewById(R.id.tops);
layout.setAdapter(topsAdapter);
///starting a new activity from each item in the main list view
layout.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Override
public void onItemClick(AdapterView < ?>adapterView, View view, int i, long l) {
Intent intent = new Intent(MainActivity.this, Main2Activity.class);
startActivity(intent);
}
});
}
ожидаемый результат, которого я хочу, - новые элементы создаются в виде списка пользователем, и при щелчке по любому элементу начинается новое действие с тем же шаблоном макета других активностей itmes'а, но с другим пользовательским вводом.но фактический результат состоит в том, что любой ввод был введен в одно действие, которое было выполнено во всех действиях всех элементов в представлении списка!