Guest User

Untitled

a guest
Oct 25th, 2020
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. package com.snakelord.pet.fitness.presentation.users
  2.  
  3. import android.os.Bundle
  4. import android.view.View
  5. import android.widget.LinearLayout
  6. import android.widget.ProgressBar
  7. import androidx.appcompat.widget.Toolbar
  8. import androidx.fragment.app.FragmentTransaction
  9. import androidx.recyclerview.widget.RecyclerView
  10. import com.snakelord.pet.fitness.R
  11. import com.snakelord.pet.fitness.data.model.UserModel
  12. import com.snakelord.pet.fitness.presentation.common.interfaces.OnUserListener
  13. import com.snakelord.pet.fitness.presentation.trains_editor.TrainsEditorFragment
  14. import com.snakelord.pet.fitness.presentation.users.adapter.UsersRecyclerViewAdapter
  15. import moxy.MvpAppCompatFragment
  16. import moxy.ktx.moxyPresenter
  17.  
  18. class UsersFragment : MvpAppCompatFragment(R.layout.fragment_abstract_list), UsersView {
  19.  
  20. private lateinit var toolbar: Toolbar
  21. private lateinit var progressBar: ProgressBar
  22. private lateinit var usersRecyclerView: RecyclerView
  23. private lateinit var firebaseErrorLayout: LinearLayout
  24. private val presenter by moxyPresenter { UsersPresenter() }
  25.  
  26. override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
  27. super.onViewCreated(view, savedInstanceState)
  28. initUI(view)
  29. }
  30.  
  31. private fun initUI(view: View) {
  32. progressBar = view.findViewById(R.id.progress_circle)
  33. usersRecyclerView = view.findViewById(R.id.recycler_view)
  34. firebaseErrorLayout = view.findViewById(R.id.firebase_error_layout)
  35. toolbar = view.findViewById(R.id.toolbar)
  36. toolbar.setTitle(R.string.users)
  37. }
  38.  
  39. private val userClickListener = object : OnUserListener {
  40. override fun onUserClick(user: UserModel) {
  41. presenter.openEditor(user)
  42. }
  43. }
  44.  
  45. override fun showUsersList(users: List<UserModel>) {
  46. progressBar.visibility = View.GONE
  47. firebaseErrorLayout.visibility = View.GONE
  48. val adapter = UsersRecyclerViewAdapter()
  49. adapter.setUsersList(users)
  50. adapter.setUserOnClickListener(userClickListener)
  51. usersRecyclerView.adapter = adapter
  52. usersRecyclerView.visibility = View.VISIBLE
  53. }
  54.  
  55. override fun showReceiveError() {
  56. progressBar.visibility = View.GONE
  57. firebaseErrorLayout.visibility = View.VISIBLE
  58. }
  59.  
  60. override fun openTrainsEditor(editorFragment: TrainsEditorFragment) {
  61. fragmentManager!!.beginTransaction()
  62. .replace(R.id.child_fragment_container, editorFragment)
  63. .addToBackStack(null)
  64. .commit()
  65. }
  66.  
  67. }
Advertisement
Add Comment
Please, Sign In to add comment