我有一个listview,它从firebase数据库中获取数据。当用户点击某个项目时,他将被带到下一个屏幕。如何获取他点击的项目的名称...假设他点击项目" A"并被引导到下一堂课。在那里我想要显示A。我可以使用意图中的putExtra方法,但数据不在代码中,而是在数据库中。有人可以帮我解决代码吗
这是用于获取数据的代码
ArrayList<String> arrayList = new ArrayList<>();
ListView listView = (ListView) rootView.findViewById(R.id.usersList);
ArrayAdapter<String> adapter;
adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, android.R.id.text1, al);
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String name = ds.child("Name").getValue().toString();
// Log.d("TAG", name);
al.add(name);
}
listView.setAdapter(adapter);
}
我需要在textview
name.setText();
答案 0 :(得分:0)
在你的行动中添加这个
listView.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,int position, long arg3)
{
Intent intent =new Intent(getApplicationContext(),YourClassName.class);
intent.putExtra("name",al.get(position));
startActivity(intent);
}
});
现在接受活动:
name.setText(getIntent().getStringExtra("name"));
答案 1 :(得分:0)
您可以创建自定义类适配器,您将在其中扩展arrayadapter。重新定义getView方法后,只需将一些信息放入intent即可将其发送到其他活动。