访问数组中对象的字段 Java
Access fields of an object in an array Java
我正在从 Firebase 中检索一些数据,包括名称和 ID,我想将其存储在一个数组中,然后仅使用名称值填充微调器。
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
People p = snapshot.getValue(People.class);
peopleArray.add(new String[]{p.name, String.valueOf(p.id)});
}
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line, (List<String>) peopleArray);
spinner.setAdapter(dataAdapter);
在 ArrayAdapter 中,我只想显示存储在 peopleArray 中的名称。我该怎么做?
List<People > people = new ArrayList<>();
List<String> peoplename = new ArrayList<>();
for(People people : people) {
System.out.println(people.getName());
// add name in separate list then assign to spinner.
peoplename.add(people.getName());
}
设置微调器
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line, peoplename);
试试这个!希望对您有所帮助
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line);
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
People p = snapshot.getValue(People.class);
//just adding id in list use later
peopleArray.add(String.valueOf(p.id));
//adding each name to your adapter
dataAdapter.add(p.name);
}
spinner.setAdapter(dataAdapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// get pID from peopleArray when item is selected
String pId = peopleArray.get(position);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
我正在从 Firebase 中检索一些数据,包括名称和 ID,我想将其存储在一个数组中,然后仅使用名称值填充微调器。
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
People p = snapshot.getValue(People.class);
peopleArray.add(new String[]{p.name, String.valueOf(p.id)});
}
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line, (List<String>) peopleArray);
spinner.setAdapter(dataAdapter);
在 ArrayAdapter 中,我只想显示存储在 peopleArray 中的名称。我该怎么做?
List<People > people = new ArrayList<>();
List<String> peoplename = new ArrayList<>();
for(People people : people) {
System.out.println(people.getName());
// add name in separate list then assign to spinner.
peoplename.add(people.getName());
}
设置微调器
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line, peoplename);
试试这个!希望对您有所帮助
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_dropdown_item_1line);
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
People p = snapshot.getValue(People.class);
//just adding id in list use later
peopleArray.add(String.valueOf(p.id));
//adding each name to your adapter
dataAdapter.add(p.name);
}
spinner.setAdapter(dataAdapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// get pID from peopleArray when item is selected
String pId = peopleArray.get(position);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});