Merge branch 'kmm' of gitlab.com:stax-river/poker-analytics into kmm

kmm
Laurent 5 years ago
commit 7e25914c70
  1. 59
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetDoubleEditTextFragment.kt
  2. 26
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetEditTextFragment.kt
  3. 22
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetEditTextMultiLinesFragment.kt
  4. 24
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetFragment.kt
  5. 22
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetListFragment.kt
  6. 23
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetListGameFragment.kt
  7. 17
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetMultiSelectionFragment.kt
  8. 23
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetNumericTextFragment.kt
  9. 24
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetStaticListFragment.kt
  10. 29
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetSumFragment.kt
  11. 24
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetTableSizeGridFragment.kt

@ -4,29 +4,41 @@ import android.os.Bundle
import android.text.InputType
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.inputmethod.EditorInfo
import androidx.core.widget.addTextChangedListener
import kotlinx.android.synthetic.main.bottom_sheet_double_edit_text.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetDoubleEditTextBinding
import net.pokeranalytics.android.exceptions.RowRepresentableEditDescriptorException
import net.pokeranalytics.android.util.extensions.round
class BottomSheetDoubleEditTextFragment : BottomSheetFragment() {
private var _binding: BottomSheetDoubleEditTextBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetDoubleEditTextBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initData()
initData()
initUI()
}
override fun onStart() {
super.onStart()
if (this.model.isEditingBlinds) {
editText2.requestFocus()
binding.editText2.requestFocus()
} else {
editText.requestFocus()
binding.editText.requestFocus()
}
}
@ -47,56 +59,47 @@ class BottomSheetDoubleEditTextFragment : BottomSheetFragment() {
throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor inconsistency")
}
// values.add(0, "")
// values.add(1, "")
LayoutInflater.from(requireContext())
.inflate(R.layout.bottom_sheet_double_edit_text, view?.bottomSheetContainer, true)
// values[0] = (data[0].defaultValue ?: "").toString()
// values[1] = (data[1].defaultValue ?: "").toString()
data[0].hintResId?.let { editText.hint = getString(it) }
editText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
data[1].hintResId?.let { editText2.hint = getString(it) }
editText2.inputType = data[1].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
data[0].hintResId?.let { binding.editText.hint = getString(it) }
binding.editText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
data[1].hintResId?.let { binding.editText2.hint = getString(it) }
binding.editText2.inputType = data[1].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
if (this.model.valueAsHint) {
this.model.stringValue?.let {
if (it.isNotBlank()) {
editText.hint = it
binding.editText.hint = it
}
}
this.model.secondStringValue?.let {
if (it.isNotBlank()) {
editText2.hint = it
binding.editText2.hint = it
}
}
// if (this.viewModel.stringValue?.isNotBlank()) { editText.hint = values[0] }
// if (values[1].isNotBlank()) { editText2.hint = values[1] }
} else {
editText.setText(this.model.stringValue)
editText2.setText(this.model.secondStringValue)
binding.editText.setText(this.model.stringValue)
binding.editText2.setText(this.model.secondStringValue)
}
editText.addTextChangedListener {
binding.editText.addTextChangedListener {
this.model.stringValue = it?.toString()
}
editText2.addTextChangedListener {
binding.editText2.addTextChangedListener {
this.model.secondStringValue = it?.toString()
if (this.model.isEditingBlinds) {
try {
val bigBlind = this.model.secondStringValue?.toDouble() ?: 0.0
editText.setText((bigBlind / 2.0).round())
binding.editText.setText((bigBlind / 2.0).round())
} catch (e: Exception) {
editText.setText("")
binding.editText.setText("")
}
}
}
editText2.setOnEditorActionListener { _, actionId, _ ->
binding.editText2.setOnEditorActionListener { _, actionId, _ ->
if (actionId == EditorInfo.IME_ACTION_DONE) {
this.onRowValueChanged()
// this.delegate.onRowValueChanged(values, row)

@ -4,38 +4,48 @@ import android.os.Bundle
import android.text.InputType
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.inputmethod.EditorInfo
import androidx.core.widget.addTextChangedListener
import kotlinx.android.synthetic.main.bottom_sheet_edit_text.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetEditTextBinding
import net.pokeranalytics.android.exceptions.RowRepresentableEditDescriptorException
class BottomSheetEditTextFragment : BottomSheetFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
private var _binding: BottomSheetEditTextBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetEditTextBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
}
override fun onStart() {
super.onStart()
editText.requestFocus()
binding.editText.requestFocus()
}
/**
* Init UI
*/
private fun initUI() {
val editText = binding.editText
val data = getDescriptors() ?: throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor not found for $this")
if (data.size != 1) {
throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor inconsistency")
}
LayoutInflater.from(requireContext()).inflate(R.layout.bottom_sheet_edit_text, view?.bottomSheetContainer, true)
data[0].hintResId?.let { editText.hint = getString(it) }
editText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
editText.addTextChangedListener {

@ -4,14 +4,27 @@ import android.os.Bundle
import android.text.InputType
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.widget.addTextChangedListener
import kotlinx.android.synthetic.main.bottom_sheet_edit_text_multi_lines.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.databinding.BottomSheetEditTextMultiLinesBinding
import net.pokeranalytics.android.exceptions.RowRepresentableEditDescriptorException
class BottomSheetEditTextMultiLinesFragment : BottomSheetFragment() {
private var _binding: BottomSheetEditTextMultiLinesBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetEditTextMultiLinesBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
@ -19,20 +32,19 @@ class BottomSheetEditTextMultiLinesFragment : BottomSheetFragment() {
override fun onStart() {
super.onStart()
editText.requestFocus()
binding.editText.requestFocus()
}
/**
* Init UI
*/
private fun initUI() {
val editText = binding.editText
val data = getDescriptors() ?: throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor not found")
if (data.size != 1) {
throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor inconsistency")
}
LayoutInflater.from(requireContext()).inflate(net.pokeranalytics.android.R.layout.bottom_sheet_edit_text_multi_lines, view?.bottomSheetContainer, true)
data[0].hintResId?.let { editText.hint = getString(it) }
editText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_MULTI_LINE or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES
editText.addTextChangedListener { this.model.stringValue = it?.toString() }

@ -9,11 +9,10 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.WindowManager
import androidx.appcompat.view.ContextThemeWrapper
import androidx.lifecycle.ViewModelProvider
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import kotlinx.android.synthetic.main.fragment_bottom_sheet.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.FragmentBottomSheetBinding
import net.pokeranalytics.android.exceptions.PAIllegalStateException
import net.pokeranalytics.android.model.LiveData
import net.pokeranalytics.android.ui.activity.components.BaseActivity
@ -46,6 +45,9 @@ open class BottomSheetFragment : BottomSheetDialogFragment() {
protected lateinit var dataAdapter: RowRepresentableAdapter
private var _binding: FragmentBottomSheetBinding? = null
private val binding get() = _binding!!
companion object {
private var config: BottomSheetConfig? = null
@ -91,11 +93,22 @@ open class BottomSheetFragment : BottomSheetDialogFragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
//TODO: When dependency 'com.google.android.material:material:1.1.0' will be available in stable version, upgrade and remove that
val contextThemeWrapper = ContextThemeWrapper(activity, R.style.PokerAnalyticsTheme)
return inflater.cloneInContext(contextThemeWrapper).inflate(R.layout.fragment_bottom_sheet, container, false)
activity?.setTheme(R.style.PokerAnalyticsTheme)
_binding = FragmentBottomSheetBinding.inflate(inflater, container, false)
binding.bottomSheetContainer.addView(getChildView(inflater, binding.root))
return binding.root
}
private fun initModel() {
open fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
return null
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
private fun initModel() {
val row = config?.row
?: (requireActivity() as? BaseActivity)?.bottomSheetViewModel?.rowRepresentable
@ -174,6 +187,7 @@ open class BottomSheetFragment : BottomSheetDialogFragment() {
private fun initUI() {
val row = this.model.row
val bottomSheetToolbar = binding.bottomSheetToolbar
bottomSheetToolbar.title = row.localizedTitle(requireContext())
bottomSheetToolbar.inflateMenu(R.menu.toolbar_bottom_sheet)
bottomSheetToolbar.setOnMenuItemClickListener {

@ -3,10 +3,9 @@ package net.pokeranalytics.android.ui.fragment.components.bottomsheet
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.bottom_sheet_list.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetListBinding
import net.pokeranalytics.android.exceptions.PAIllegalStateException
import net.pokeranalytics.android.ui.adapter.LiveRowRepresentableDataSource
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
@ -16,6 +15,19 @@ import net.pokeranalytics.android.ui.view.RowViewType
open class BottomSheetListFragment : BottomSheetFragment(), LiveRowRepresentableDataSource, RowRepresentableDelegate {
private var _binding: BottomSheetListBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetListBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun adapterRows(): List<RowRepresentable>? {
return this.model.realmData
}
@ -82,13 +94,11 @@ open class BottomSheetListFragment : BottomSheetFragment(), LiveRowRepresentable
* Init UI
*/
open fun initUI() {
LayoutInflater.from(requireContext()).inflate(R.layout.bottom_sheet_list, view?.bottomSheetContainer, true)
val viewManager = LinearLayoutManager(requireContext())
val dataAdapter = RowRepresentableAdapter(this, this)
this.dataAdapter = dataAdapter
recyclerView.apply {
binding.recyclerView.apply {
setHasFixedSize(true)
layoutManager = viewManager
adapter = dataAdapter

@ -3,12 +3,11 @@ package net.pokeranalytics.android.ui.fragment.components.bottomsheet
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.view.get
import androidx.recyclerview.widget.LinearLayoutManager
import com.google.android.material.chip.Chip
import kotlinx.android.synthetic.main.bottom_sheet_game_list.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetGameListBinding
import net.pokeranalytics.android.model.Limit
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.extensions.px
@ -20,6 +19,19 @@ import net.pokeranalytics.android.ui.view.RowRepresentable
*/
class BottomSheetListGameFragment : BottomSheetListFragment() {
private var _binding: BottomSheetGameListBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetGameListBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
@ -41,8 +53,7 @@ class BottomSheetListGameFragment : BottomSheetListFragment() {
* Init UI
*/
override fun initUI() {
LayoutInflater.from(requireContext()).inflate(R.layout.bottom_sheet_game_list, view?.bottomSheetContainer, true)
val chipGroup = binding.chipGroup
val limit = this.model.limit
this.model.someValues.add(0, limit)
@ -71,7 +82,7 @@ class BottomSheetListGameFragment : BottomSheetListFragment() {
val dataAdapter = RowRepresentableAdapter(this, this)
this.dataAdapter = dataAdapter
recyclerView2.apply {
binding.recyclerView2.apply {
setHasFixedSize(true)
layoutManager = viewManager2
adapter = dataAdapter

@ -2,7 +2,11 @@ package net.pokeranalytics.android.ui.fragment.components.bottomsheet
import android.app.Activity
import android.content.Intent
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import io.realm.RealmModel
import net.pokeranalytics.android.databinding.BottomSheetDoubleEditTextBinding
import net.pokeranalytics.android.model.LiveData
import net.pokeranalytics.android.ui.modules.data.EditableDataActivity
import net.pokeranalytics.android.ui.activity.components.BaseActivity
@ -14,6 +18,19 @@ import net.pokeranalytics.android.ui.view.RowViewType
*/
open class BottomSheetMultiSelectionFragment : BottomSheetListFragment() {
private var _binding: BottomSheetDoubleEditTextBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetDoubleEditTextBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun viewTypeForPosition(position: Int): Int {
return RowViewType.TITLE_CHECK.ordinal
}

@ -4,17 +4,29 @@ import android.os.Bundle
import android.text.InputType
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.inputmethod.EditorInfo
import androidx.core.widget.addTextChangedListener
import kotlinx.android.synthetic.main.bottom_sheet_edit_text.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetEditTextBinding
import net.pokeranalytics.android.exceptions.RowRepresentableEditDescriptorException
import java.text.NumberFormat
class BottomSheetNumericTextFragment : BottomSheetFragment() {
private var _binding: BottomSheetEditTextBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetEditTextBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
@ -22,20 +34,19 @@ class BottomSheetNumericTextFragment : BottomSheetFragment() {
override fun onStart() {
super.onStart()
editText.requestFocus()
binding.editText.requestFocus()
}
/**
* Init UI
*/
private fun initUI() {
val editText = binding.editText
val data = getDescriptors()?:throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor not found")
if (data.size != 1) {
throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor inconsistency")
}
LayoutInflater.from(requireContext()).inflate(R.layout.bottom_sheet_edit_text, view?.bottomSheetContainer, true)
data[0].hintResId?.let { editText.hint = getString(it) }
editText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES

@ -3,10 +3,9 @@ package net.pokeranalytics.android.ui.fragment.components.bottomsheet
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.bottom_sheet_list.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetListBinding
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource
@ -15,10 +14,20 @@ import net.pokeranalytics.android.ui.view.RowRepresentable
class BottomSheetStaticListFragment : BottomSheetFragment(), StaticRowRepresentableDataSource,
RowRepresentableDelegate {
// private var staticRows: List<RowRepresentable> = emptyList()
// private lateinit var dataAdapter: RowRepresentableAdapter
private var _binding: BottomSheetListBinding? = null
private val binding get() = _binding!!
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetListBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
}
@ -45,13 +54,12 @@ class BottomSheetStaticListFragment : BottomSheetFragment(), StaticRowRepresenta
* Init UI
*/
private fun initUI() {
LayoutInflater.from(requireContext()).inflate(R.layout.bottom_sheet_list, view?.bottomSheetContainer, true)
val viewManager = LinearLayoutManager(requireContext())
val dataAdapter = RowRepresentableAdapter(this, this)
this.dataAdapter = dataAdapter
recyclerView.apply {
binding.recyclerView.apply {
setHasFixedSize(true)
layoutManager = viewManager
adapter = dataAdapter

@ -4,11 +4,10 @@ import android.os.Bundle
import android.text.InputType
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.inputmethod.EditorInfo
import androidx.core.widget.addTextChangedListener
import kotlinx.android.synthetic.main.bottom_sheet_sum.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetSumBinding
import net.pokeranalytics.android.exceptions.RowRepresentableEditDescriptorException
import net.pokeranalytics.android.util.extensions.round
import net.pokeranalytics.android.util.extensions.toCurrency
@ -17,14 +16,27 @@ import java.text.NumberFormat
class BottomSheetSumFragment : BottomSheetFragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
private var _binding: BottomSheetSumBinding? = null
private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetSumBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
}
override fun onStart() {
super.onStart()
editText.requestFocus()
binding.editText.requestFocus()
}
@ -32,11 +44,16 @@ class BottomSheetSumFragment : BottomSheetFragment() {
* Init UI
*/
private fun initUI() {
val currentValue = binding.currentValue
val editText = binding.editText
val editText2 = binding.editText2
val button1 = binding.button1
val button2 = binding.button2
val data = getDescriptors()?:throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor not found")
if (data.size != 5) {
throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor inconsistency")
}
LayoutInflater.from(requireContext()).inflate(R.layout.bottom_sheet_sum, view?.bottomSheetContainer, true)
if (data.size == 5) {

@ -3,10 +3,9 @@ package net.pokeranalytics.android.ui.fragment.components.bottomsheet
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.GridLayoutManager
import kotlinx.android.synthetic.main.bottom_sheet_grid.*
import kotlinx.android.synthetic.main.fragment_bottom_sheet.view.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.databinding.BottomSheetGridBinding
import net.pokeranalytics.android.model.TableSize
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
@ -17,9 +16,20 @@ import net.pokeranalytics.android.ui.view.RowRepresentable
class BottomSheetTableSizeGridFragment : BottomSheetFragment(), StaticRowRepresentableDataSource, RowRepresentableDelegate {
// private lateinit var dataAdapter: RowRepresentableAdapter
private var _binding: BottomSheetGridBinding? = null
private val binding get() = _binding!!
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetGridBinding.inflate(inflater, container, true)
return binding.root
}
override fun onDestroyView() {
super.onDestroyView()
_binding = null
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
initUI()
}
@ -34,8 +44,6 @@ class BottomSheetTableSizeGridFragment : BottomSheetFragment(), StaticRowReprese
* Init UI
*/
private fun initUI() {
LayoutInflater.from(requireContext())
.inflate(R.layout.bottom_sheet_grid, view?.bottomSheetContainer, true)
val viewManager = GridLayoutManager(requireContext(), 3)
val dataAdapter = RowRepresentableAdapter(this, this)
@ -45,7 +53,7 @@ class BottomSheetTableSizeGridFragment : BottomSheetFragment(), StaticRowReprese
val spacing = 2.px
val includeEdge = false
recyclerView.apply {
binding.recyclerView.apply {
setHasFixedSize(true)
layoutManager = viewManager
adapter = dataAdapter

Loading…
Cancel
Save