-1
私はデータベースを持つサーバーを持っています。私のデータベースには現在25のアイテムがありますが、アイテムを追加して削除します。多かれ少なかれアイテムを持つことができるOnItemClickListener
私はスイッチのnケースメソッドを記述するだけで、javaのListView
を25個のアイテムに使用しています。
しかし、どうすれば私のデータベースの項目が追加または削除されるので、余分なケース項目をItemListener
に追加することができますか?
これは私が、現時点ではそれを持っている方法ですが、私は私のアプリ私は
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
switch(i){
case 0:
break;
}
}
});
新しい項目を追加するたびに更新する必要はありません編集
これは私が追加する方法ですfirebase
mrootref = new Firebase("my firebaselink");
lv = (ListView)findViewById(R.id.lvnames);
mrootref.child("Mydatabase name").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot snapshot, String s) {
final ArrayAdapter<String> jlistAdapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1, webstreamsArray);
lv.setAdapter(jlistAdapter);
String streamname = snapshot.child("name").getValue(String.class);
jlistAdapter.notifyDataSetChanged();
webstreamsArray.add(streamname);
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
switch(i){
case 0:
break;
}
}
});
}
}
Editを使用して、リストに項目
以下に、私のデータベース構造のスクリーンショットが含まれています。私のアプリケーションは、データベースの名前部分を呼び出して、リストビューに取り込みます。アイテムが削除された場合、アイテムはリストビューから削除されます。私は名前の項目がクリックされたとき、それはここにURL項目に
の助けから思い付くものですなぜスイッチケースを使用していますか –
何をお勧めしますか?NJ –
実行時にコードを動的に追加することはできません。あなたのアダプターのすべてのアイテムは、まったく同じイベントを受信する予定です。あなたは位置にスイッチを必要としません –