Dataless :
I am making a review application and i am trying to display all the child data from firebase. A snip from my firebase is:https://i.stack.imgur.com/YrmNO.png I can get the data i want in a listview but how do i find out what was pressed so i can send the data to a new activity ? so for example click Bluemoon and can get that data from the database in a new activity?
DatabaseReference Reference = FirebaseDatabase.getInstance().getReference().child("Beers");
//DatabaseReference zone1Ref = Reference.child(beerCode);
listView =(ListView)findViewById(R.id.allBeersList);
final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,mAllBeers);
listView.setAdapter(arrayAdapter);
arrayAdapter.clear();
Reference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
//arrayAdapter.clear();
for(DataSnapshot snapshot : dataSnapshot.getChildren()){
//arrayAdapter.add(snapshot.getValue().toString());
Beers beers = snapshot.getValue(Beers.class);
String beerClass = beers.getmBrewery() + " " + beers.getmName();
arrayAdapter.add(beerClass);
}
arrayAdapter.notifyDataSetChanged();
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
//Toast.makeText(allBeers.this,"Test",Toast.LENGTH_SHORT).show();
//Intent intent = new Intent(allBeers.this,beerInformation.class);
//startActivity(intent);
//Toast.makeText(allBeers.this,beerCode + "",Toast.LENGTH_SHORT).show();
}
});```
Becca :
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
// ListView Clicked item index
int itemPosition = position;
// ListView Clicked item value
String itemValue = (String) listView.getItemAtPosition(position);
// Show Toast
Toast.makeText(getApplicationContext(),
"Position:"+itemPosition+" Item Clicked: " +itemValue , Toast.LENGTH_LONG)
.show();
//Instead of showing a toast here you can pass "itemValue" to another activity as intent
}
});