Guest User

Untitled

a guest
Dec 8th, 2022
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.58 KB | None | 0 0
  1. import android.content.Intent
  2. import android.os.Bundle
  3. import android.widget.Toast
  4. import androidx.appcompat.app.AppCompatActivity
  5. import androidx.recyclerview.widget.LinearLayoutManager
  6. import com.example.wotcher.databinding.ActivityMainBinding
  7. import com.google.firebase.auth.FirebaseAuth
  8. import com.google.firebase.database.*
  9.  
  10. class MainActivity : AppCompatActivity() {
  11.  
  12. lateinit var mainBinding: ActivityMainBinding
  13.  
  14. val database : FirebaseDatabase = FirebaseDatabase.getInstance()
  15. val databaseRefrence : DatabaseReference = database.reference.child("Users")
  16.  
  17. var userList = ArrayList<Users>()
  18. lateinit var userAdapter: UsersAdapter
  19.  
  20. override fun onCreate(savedInstanceState: Bundle?) {
  21. super.onCreate(savedInstanceState)
  22.  
  23. mainBinding = ActivityMainBinding.inflate(layoutInflater)
  24. var view = mainBinding.root
  25.  
  26.  
  27. retriveDataFromDatabase()
  28. userList = retriveDataFromDatabase()
  29.  
  30. userAdapter = UsersAdapter(this@MainActivity, userList)
  31. mainBinding.listOfUsers.layoutManager = LinearLayoutManager(this@MainActivity)
  32. mainBinding.listOfUsers.adapter = userAdapter
  33.  
  34. println("Out fun: $userList")
  35.  
  36. setContentView(view)
  37.  
  38. mainBinding.logoutUser.setOnClickListener {
  39.  
  40. logoutUserFirebase()
  41.  
  42. }
  43. }
  44.  
  45. fun retriveDataFromDatabase() : ArrayList<Users> {
  46.  
  47. databaseRefrence.addValueEventListener(object : ValueEventListener{
  48. override fun onDataChange(snapshot: DataSnapshot) {
  49.  
  50. userList.clear()
  51.  
  52. for (eachUser in snapshot.children) {
  53. val user = eachUser.getValue(Users::class.java)
  54.  
  55. if (user != null) {
  56. println("user name: ${user.name}")
  57. println("user email: ${user.email}")
  58. println("user Id: ${user.userId}")
  59. println("***************************")
  60.  
  61. userList.add(user)
  62. }
  63.  
  64. }
  65. println("In fun: $userList")
  66. }
  67.  
  68.  
  69. override fun onCancelled(error: DatabaseError) {
  70. TODO("Not yet implemented")
  71. }
  72. })
  73.  
  74. return userList
  75. }
  76.  
  77. fun logoutUserFirebase() {
  78. FirebaseAuth.getInstance().signOut()
  79.  
  80. Toast.makeText(applicationContext, "Logout is successful", Toast.LENGTH_SHORT).show()
  81.  
  82. val intent = Intent(this, LoginActivity::class.java)
  83. startActivity(intent)
  84. finish()
  85. }
  86.  
  87. }
Advertisement
Add Comment
Please, Sign In to add comment