This repository has been archived on 2026-05-26. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
avh-plan-android/app/src/main/java/com/denizd/substitutionplan/FoodFragment.kt
T

68 lines
2.5 KiB
Kotlin
Raw Normal View History

2019-04-29 19:27:51 +02:00
package com.denizd.substitutionplan
import android.content.Context
import android.content.SharedPreferences
import android.os.Bundle
import android.preference.PreferenceManager
import android.view.View
import androidx.fragment.app.Fragment
import androidx.lifecycle.Observer
import androidx.lifecycle.ViewModelProviders
2019-05-26 18:40:02 +02:00
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
class FoodFragment : Fragment(R.layout.food_layout) {
private val foodArrayList = ArrayList<Food>()
private val mAdapter = FoodAdapter(foodArrayList)
private lateinit var mContext: Context
private lateinit var prefs: SharedPreferences
private lateinit var edit: SharedPreferences.Editor
private lateinit var recyclerView: RecyclerView
private lateinit var foodViewModel: FoodViewModel
override fun onAttach(context: Context) {
super.onAttach(context)
mContext = context
prefs = PreferenceManager.getDefaultSharedPreferences(mContext)
edit = prefs.edit()
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val pullToRefresh = view.findViewById<SwipeRefreshLayout>(R.id.pullToRefresh)
try {
recyclerView = view.findViewById(R.id.linear_food)
recyclerView.hasFixedSize()
2019-05-26 18:40:02 +02:00
recyclerView.layoutManager = GridLayoutManager(mContext, 1) // , RecyclerView.VERTICAL,false
recyclerView.adapter = mAdapter
try {
recyclerView.removeAllViews()
} catch (ignored: NullPointerException) {}
} catch (ignored: NullPointerException) {}
foodViewModel = ViewModelProviders.of(this).get(FoodViewModel::class.java)
foodViewModel.allFoods?.observe(this, Observer<List<Food>> { foodList ->
foodArrayList.clear()
for (item in foodList) {
foodArrayList.add(item)
}
recyclerView.scheduleLayoutAnimation()
mAdapter.setFood(foodArrayList)
})
if (prefs.getBoolean("autoRefresh", false)) {
pullToRefresh.isRefreshing = true
DataFetcher(false, true, false, mContext, activity!!.application, view.rootView).execute()
}
pullToRefresh.setOnRefreshListener {
pullToRefresh.isRefreshing = true
DataFetcher(false, true, false, mContext, activity!!.application, view.rootView).execute()
}
}
2019-04-29 19:27:51 +02:00
}