Как выполнить настройку повторного просмотра с помощью FIrebaseRecyclerAdapter с моделью представления? - PullRequest
0 голосов
/ 05 января 2019

Я настроил свой RecyclerView с помощью FirebaseRecyclerAdapter. Я настраиваю FirebaseRecycler с помощью традиционных методов, таких как этот, PostsRecyclerAdapter расширяет FirebaseRecyclerAdapter

    class PostsFragment : Fragment() {
    private lateinit var recyclerView: RecyclerView
    private lateinit var viewManager: RecyclerView.LayoutManager
    private lateinit var mAdapter : PostsRecyclerAdapter

    override fun onCreateView(
            inflater: LayoutInflater,
            container: ViewGroup?,
            savedInstanceState: Bundle?
    ): View? {
        setHasOptionsMenu(true)

        val view : View = inflater.inflate(R.layout.fragment_posts, container, false)



        recyclerView = view.findViewById<RecyclerView>(R.id.posts_recycler)

        viewManager = LinearLayoutManager(context).apply {
            this.reverseLayout = true
            this.stackFromEnd = true
        }

        return view

    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)

    val myTopPostsQuery = FirebaseUtil.getBaseRef().child("posts")
            .orderByChild("timestamp")

    val myTopPostsQuery = FirebaseUtil.getBaseRef().child("posts")
                .orderByChild("timestamp")
        val options : FirebaseRecyclerOptions<Post> = 
        FirebaseRecyclerOptions.Builder<Post>()
            .setQuery(myTopPostsQuery, Post::class.java)
            .build()
        mAdapter = PostsRecyclerAdapter(options)

        recyclerView.layoutManager = viewManager
        recyclerView.adapter = mAdapter

    }


    override fun onStart() {
        super.onStart()
        mAdapter.startListening();
    }

    override fun onStop() {
        super.onStop()
        mAdapter.stopListening()
    }
}

Как добавить ViewModel к этой вещи? Я хочу использовать MVVM в своем приложении.


...