Guest User

Untitled

a guest
Oct 23rd, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.20 KB | None | 0 0
  1. package com.example.yudinata.premierleagueschedule.FolderNext
  2.  
  3. import android.content.Context
  4. import android.os.Bundle
  5. import android.support.v4.app.Fragment
  6. import android.support.v4.widget.SwipeRefreshLayout
  7. import android.support.v7.widget.LinearLayoutManager
  8. import android.support.v7.widget.RecyclerView
  9. import android.util.Log
  10. import android.view.LayoutInflater
  11. import android.view.View
  12. import android.view.ViewGroup
  13. import android.widget.*
  14. import com.example.yudinata.premierleagueschedule.*
  15. import com.example.yudinata.premierleagueschedule.API.ApiRepository
  16. import com.example.yudinata.premierleagueschedule.R.array.league
  17. import com.google.gson.Gson
  18. import org.jetbrains.anko.*
  19. import org.jetbrains.anko.recyclerview.v7.recyclerView
  20. import org.jetbrains.anko.support.v4.ctx
  21. import org.jetbrains.anko.support.v4.onRefresh
  22. import org.jetbrains.anko.support.v4.swipeRefreshLayout
  23.  
  24. class NextFragment: Fragment(),AnkoComponent<Context>, NextView {
  25.  
  26. private var nexts: MutableList<Next> = mutableListOf()
  27. private lateinit var nextPresenter: NextPresenter
  28. private lateinit var nextAdapter: NextAdapter
  29. private lateinit var spinner : Spinner
  30. private lateinit var listNext :RecyclerView
  31. private lateinit var progressBar:ProgressBar
  32. private lateinit var swipeRefresh:SwipeRefreshLayout
  33. private lateinit var leagueName: String
  34.  
  35. override fun onActivityCreated(savedInstanceState: Bundle?) {
  36. super.onActivityCreated(savedInstanceState)
  37.  
  38. val spinnerItems = resources.getStringArray(league)
  39. val spinnerAdapter = ArrayAdapter(ctx, android.R.layout.simple_spinner_dropdown_item, spinnerItems)
  40. spinner.adapter = spinnerAdapter
  41.  
  42. nextAdapter = NextAdapter(nexts) {
  43. ctx.startActivity<Main2Activity>()
  44. }
  45. listNext.adapter = nextAdapter
  46.  
  47. val request = ApiRepository()
  48. val gson = Gson()
  49. nextPresenter = NextPresenter(this, request, gson)
  50. spinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
  51. override fun onItemSelected(parent: AdapterView<*>, view: View, position: Int, id: Long) {
  52. leagueName = spinner.selectedItem.toString()
  53. nextPresenter.getEventList(leagueName)
  54. Log.d("log nama ",leagueName)
  55. }
  56.  
  57. override fun onNothingSelected(parent: AdapterView<*>) {}
  58. }
  59.  
  60. swipeRefresh.onRefresh {
  61. nextPresenter.getEventList(leagueName)
  62. }
  63.  
  64. }//onActivity
  65.  
  66.  
  67. override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
  68. return createView(AnkoContext.create(ctx))
  69. }
  70.  
  71. override fun createView(ui: AnkoContext<Context>): View = with(ui){
  72. linearLayout {
  73. lparams (width = matchParent, height = wrapContent)
  74. orientation = LinearLayout.VERTICAL
  75. topPadding = dip(16)
  76. leftPadding = dip(16)
  77. rightPadding = dip(16)
  78.  
  79. spinner = spinner {
  80. id= R.id.spinner
  81. }
  82.  
  83. swipeRefresh = swipeRefreshLayout {
  84. setColorSchemeResources(R.color.colorAccent,
  85. android.R.color.holo_green_light,
  86. android.R.color.holo_orange_light,
  87. android.R.color.holo_red_light)
  88.  
  89. relativeLayout{
  90. lparams (width = matchParent, height = wrapContent)
  91.  
  92. listNext = recyclerView {
  93. id = R.id.listNext
  94. lparams (width = matchParent, height = wrapContent)
  95. layoutManager = LinearLayoutManager(ctx)
  96. }
  97.  
  98. progressBar = progressBar {
  99. }.lparams{
  100. centerHorizontally()
  101. }
  102. }
  103. }
  104.  
  105. }//end liniearLayout
  106. }//end create UI
  107.  
  108. override fun showLoading() {
  109. progressBar.visible()
  110. }
  111.  
  112. override fun hideLoading() {
  113. progressBar.invisible()
  114. }
  115.  
  116. override fun showEventList(data: List<Next>) {
  117. swipeRefresh.isRefreshing = false
  118. nexts.clear()
  119. nexts.addAll(data)
  120. nextAdapter.notifyDataSetChanged()
  121. }
  122.  
  123.  
  124. }//end of class
Add Comment
Please, Sign In to add comment