nurrohim11

Untitled

Sep 10th, 2018
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 3.26 KB | None | 0 0
  1. package com.izzaweb.clubfootbalapps.favorit
  2.  
  3. import android.content.Context
  4. import android.graphics.Color
  5. import android.graphics.drawable.ColorDrawable
  6. import android.net.Uri
  7. import android.os.Bundle
  8. import android.support.v4.app.Fragment
  9. import android.support.v4.widget.SwipeRefreshLayout
  10. import android.support.v7.widget.LinearLayoutManager
  11. import android.support.v7.widget.RecyclerView
  12. import android.view.LayoutInflater
  13. import android.view.View
  14. import android.view.ViewGroup
  15. import android.widget.LinearLayout
  16.  
  17. import com.izzaweb.clubfootbalapps.R
  18. import com.izzaweb.clubfootbalapps.detail.MatchDetailActivity
  19. import com.izzaweb.clubfootbalapps.model.Favorite
  20. import org.jetbrains.anko.*
  21. import org.jetbrains.anko.db.classParser
  22. import org.jetbrains.anko.db.select
  23. import org.jetbrains.anko.recyclerview.v7.recyclerView
  24. import org.jetbrains.anko.support.v4.ctx
  25. import org.jetbrains.anko.support.v4.onRefresh
  26. import org.jetbrains.anko.support.v4.selector
  27. import org.jetbrains.anko.support.v4.swipeRefreshLayout
  28.  
  29. class FavoritFragment : Fragment() , AnkoComponent<Context>{
  30.     private var favorites: MutableList<Favorite> = mutableListOf()
  31.     private lateinit var adapter: FavoriteAdapter
  32.     private lateinit var listFavorit: RecyclerView
  33.     private lateinit var swipe: SwipeRefreshLayout
  34.     override fun onActivityCreated(savedInstanceState: Bundle?) {
  35.         super.onActivityCreated(savedInstanceState)
  36.         adapter = FavoriteAdapter(favorites){
  37.             ctx.startActivity<MatchDetailActivity>("detail" to it)
  38.         }
  39.         listFavorit.adapter = adapter
  40.         showFavorite()
  41.         swipe.onRefresh {
  42.             favorites.clear()
  43.             showFavorite()
  44.         }
  45.     }
  46.  
  47.     override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
  48.                               savedInstanceState: Bundle?): View? {
  49.         // Inflate the layout for this fragment
  50.         return createView(AnkoContext.create(ctx))
  51.     }
  52.     override fun createView(ui: AnkoContext<Context>): View = with(ui) {
  53.         linearLayout{
  54.             lparams(width = matchParent, height = wrapContent)
  55.             orientation= LinearLayout.VERTICAL
  56.             topPadding = dip(16)
  57.             leftPadding = dip(16)
  58.             rightPadding = dip(16)
  59.             background = ColorDrawable(Color.parseColor("#f6f6f6"))
  60.  
  61.             swipe = swipeRefreshLayout{
  62.                 setColorSchemeResources(R.color.colorAccent,
  63.                         android.R.color.holo_blue_light,
  64.                         android.R.color.holo_green_light,
  65.                         android.R.color.holo_green_dark)
  66.                 relativeLayout{
  67.                     lparams(width = matchParent, height = wrapContent)
  68.  
  69.                     listFavorit = recyclerView{
  70.                         id = R.id.listPrevMatch
  71.                         lparams(width= matchParent, height = wrapContent)
  72.                         layoutManager = LinearLayoutManager(ctx)
  73.                     }
  74.                 }
  75.             }
  76.         }
  77.     }
  78.  
  79.     private fun showFavorite() {
  80.         context?.database?.use {
  81.             swipe.isRefreshing = false
  82.             val result = select(Favorite.TABLE_FAVORITE)
  83.             val favorite = result.parseList(classParser<Favorite>())
  84.             favorites.addAll(favorite)
  85.             adapter.notifyDataSetChanged()
  86.         }
  87.     }
  88.  
  89. }
Add Comment
Please, Sign In to add comment