mirror of
https://github.com/sudoxnym/habitica-android.git
synced 2026-07-14 18:21:57 +00:00
Fix crash in shops. Fixes #847
This commit is contained in:
parent
d61fea5e76
commit
0d3574efd3
1 changed files with 13 additions and 15 deletions
|
|
@ -35,19 +35,7 @@ class ShopFragment : BaseFragment() {
|
|||
@Inject
|
||||
lateinit var configManager: RemoteConfigManager
|
||||
|
||||
private val layoutManager: GridLayoutManager by lazy {
|
||||
val layoutManager = GridLayoutManager(context, 2)
|
||||
layoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() {
|
||||
override fun getSpanSize(position: Int): Int {
|
||||
return if (adapter?.getItemViewType(position) ?: 0 < 3) {
|
||||
layoutManager.spanCount
|
||||
} else {
|
||||
1
|
||||
}
|
||||
}
|
||||
}
|
||||
return@lazy layoutManager
|
||||
}
|
||||
private var layoutManager: GridLayoutManager? = null
|
||||
|
||||
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
|
||||
super.onCreateView(inflater, container, savedInstanceState)
|
||||
|
|
@ -73,6 +61,16 @@ class ShopFragment : BaseFragment() {
|
|||
}
|
||||
|
||||
if (recyclerView.layoutManager == null) {
|
||||
layoutManager = GridLayoutManager(context, 2)
|
||||
layoutManager?.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() {
|
||||
override fun getSpanSize(position: Int): Int {
|
||||
return if (adapter?.getItemViewType(position) ?: 0 < 3) {
|
||||
layoutManager?.spanCount ?: 1
|
||||
} else {
|
||||
1
|
||||
}
|
||||
}
|
||||
}
|
||||
recyclerView.layoutManager = layoutManager
|
||||
}
|
||||
|
||||
|
|
@ -168,8 +166,8 @@ class ShopFragment : BaseFragment() {
|
|||
if (spanCount == 0) {
|
||||
spanCount = 1
|
||||
}
|
||||
layoutManager.spanCount = spanCount
|
||||
layoutManager.requestLayout()
|
||||
layoutManager?.spanCount = spanCount
|
||||
layoutManager?.requestLayout()
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
|
|
|||
Loading…
Reference in a new issue