Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.snakelord.pet.fitness.presentation.users
- import android.os.Bundle
- import android.view.View
- import android.widget.LinearLayout
- import android.widget.ProgressBar
- import androidx.appcompat.widget.Toolbar
- import androidx.fragment.app.FragmentTransaction
- import androidx.recyclerview.widget.RecyclerView
- import com.snakelord.pet.fitness.R
- import com.snakelord.pet.fitness.data.model.UserModel
- import com.snakelord.pet.fitness.presentation.common.interfaces.OnUserListener
- import com.snakelord.pet.fitness.presentation.trains_editor.TrainsEditorFragment
- import com.snakelord.pet.fitness.presentation.users.adapter.UsersRecyclerViewAdapter
- import moxy.MvpAppCompatFragment
- import moxy.ktx.moxyPresenter
- class UsersFragment : MvpAppCompatFragment(R.layout.fragment_abstract_list), UsersView {
- private lateinit var toolbar: Toolbar
- private lateinit var progressBar: ProgressBar
- private lateinit var usersRecyclerView: RecyclerView
- private lateinit var firebaseErrorLayout: LinearLayout
- private val presenter by moxyPresenter { UsersPresenter() }
- override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
- super.onViewCreated(view, savedInstanceState)
- initUI(view)
- }
- private fun initUI(view: View) {
- progressBar = view.findViewById(R.id.progress_circle)
- usersRecyclerView = view.findViewById(R.id.recycler_view)
- firebaseErrorLayout = view.findViewById(R.id.firebase_error_layout)
- toolbar = view.findViewById(R.id.toolbar)
- toolbar.setTitle(R.string.users)
- }
- private val userClickListener = object : OnUserListener {
- override fun onUserClick(user: UserModel) {
- presenter.openEditor(user)
- }
- }
- override fun showUsersList(users: List<UserModel>) {
- progressBar.visibility = View.GONE
- firebaseErrorLayout.visibility = View.GONE
- val adapter = UsersRecyclerViewAdapter()
- adapter.setUsersList(users)
- adapter.setUserOnClickListener(userClickListener)
- usersRecyclerView.adapter = adapter
- usersRecyclerView.visibility = View.VISIBLE
- }
- override fun showReceiveError() {
- progressBar.visibility = View.GONE
- firebaseErrorLayout.visibility = View.VISIBLE
- }
- override fun openTrainsEditor(editorFragment: TrainsEditorFragment) {
- fragmentManager!!.beginTransaction()
- .replace(R.id.child_fragment_container, editorFragment)
- .addToBackStack(null)
- .commit()
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment