If you have an app which displays data from firebase database in a custom ListView, and you want to delete data from it, then follow this method.
This method of deleting data is for apps which push data to firebase database on button click by using blocks as shown in image below,
retrieves data from firebase database, on Firebase DB onChildAdded event, by using blocks as shown in image below,
In order to delete data from this kind of app follow the steps given below.
1. Add a new String list str.
2. In the CustomView, add an ImageView imageview2 and set it's image to delete icon. On clicking this ImageView the item will get deleted.
3. In Firebase DB onChildAdded event, inside Firebase DB... get children to List Map... then block,
3. In Firebase DB onChildAdded event, inside Firebase DB... get children to List Map... then block,
add the block
Add [childKey] to List String [str],
as shown in image below.
Add [childKey] to List String [str],
as shown in image below.
This will create a list of keys or children at the DatabaseReference 'Chat'.
4. In the event onBindCustomView add the block
When [imageview2] clicked,
Inside this use blocks to delete key at that position in FirebaseDB and delete data at that position in String list:
FirebaseDB Chat delete key [get at (position) of List String (str)],
delete at (position) of List str.
If the app is using Firebase Storage to store images and push the url of images to FirebaseDB using blocks as shown below,
Then to delete the image alongwith the message, in onBindCustomView, inside When imageview2 clicked, alongwith the blocks shown above, use following blocks:
If (ListMap [map1] contains at (position) key [image]) then,
FirebaseStorage [fstore] delete file url (get value at (position) key [image] of ListMap [map1])
4. In the event onBindCustomView add the block
When [imageview2] clicked,
Inside this use blocks to delete key at that position in FirebaseDB and delete data at that position in String list:
FirebaseDB Chat delete key [get at (position) of List String (str)],
delete at (position) of List str.
If the app is using Firebase Storage to store images and push the url of images to FirebaseDB using blocks as shown below,
Then to delete the image alongwith the message, in onBindCustomView, inside When imageview2 clicked, alongwith the blocks shown above, use following blocks:
If (ListMap [map1] contains at (position) key [image]) then,
FirebaseStorage [fstore] delete file url (get value at (position) key [image] of ListMap [map1])
5. Add a new event Firebase DB onChildRemoved and there add the blocks to retrieve data from Firebase to MapList and display it in ListView, as shown in image below.
6. Save and run the project. Wait for the app to load data from firebase database. After that if you click inageview2 at any position in the list, data at that position in database will get deleted.
Watch the video below:
Watch the video below:
0 Yorumlar