From a43340a15bf248531ac05d0033d1e44e3fdcc32b Mon Sep 17 00:00:00 2001 From: Leland Wu Date: Fri, 22 May 2020 14:17:45 -0400 Subject: [PATCH] resize mounts cards --- Habitica/res/layout/mount_overview_item.xml | 47 +++++++++++++++++++ ...verview_item.xml => pet_overview_item.xml} | 0 Habitica/res/values/dimens.xml | 3 ++ .../inventory/MountDetailRecyclerAdapter.kt | 2 +- .../inventory/StableRecyclerAdapter.kt | 20 +++++--- .../stable/StableRecyclerFragment.kt | 3 +- 6 files changed, 66 insertions(+), 9 deletions(-) create mode 100644 Habitica/res/layout/mount_overview_item.xml rename Habitica/res/layout/{animal_overview_item.xml => pet_overview_item.xml} (100%) diff --git a/Habitica/res/layout/mount_overview_item.xml b/Habitica/res/layout/mount_overview_item.xml new file mode 100644 index 000000000..cf1fcdb2d --- /dev/null +++ b/Habitica/res/layout/mount_overview_item.xml @@ -0,0 +1,47 @@ + + + + + style="@style/CardContent"> + + + + + + + + diff --git a/Habitica/res/layout/animal_overview_item.xml b/Habitica/res/layout/pet_overview_item.xml similarity index 100% rename from Habitica/res/layout/animal_overview_item.xml rename to Habitica/res/layout/pet_overview_item.xml diff --git a/Habitica/res/values/dimens.xml b/Habitica/res/values/dimens.xml index 32120ca63..e8f7edcbe 100644 --- a/Habitica/res/values/dimens.xml +++ b/Habitica/res/values/dimens.xml @@ -51,9 +51,12 @@ 14sp 2dp 84dp + 120dp 28dp 68dp 65dp + 81dp + 99dp 124dp 10dp 16dp diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/MountDetailRecyclerAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/MountDetailRecyclerAdapter.kt index 0401cee20..e9ff8f3e7 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/MountDetailRecyclerAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/MountDetailRecyclerAdapter.kt @@ -39,7 +39,7 @@ class MountDetailRecyclerAdapter(data: OrderedRealmCollection?, autoUpdat } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MountViewHolder { - return MountViewHolder(parent.inflate(R.layout.animal_overview_item)) + return MountViewHolder(parent.inflate(R.layout.pet_overview_item)) } override fun onBindViewHolder(holder: MountViewHolder, position: Int) { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt index 37591ee7b..a9ec80f00 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/inventory/StableRecyclerAdapter.kt @@ -6,7 +6,6 @@ import android.graphics.drawable.BitmapDrawable import android.view.View import android.view.ViewGroup import android.widget.TextView -import androidx.core.content.ContextCompat import androidx.recyclerview.widget.GridLayoutManager import com.facebook.drawee.view.SimpleDraweeView import com.habitrpg.android.habitica.R @@ -45,9 +44,11 @@ class StableRecyclerAdapter : androidx.recyclerview.widget.RecyclerView.Adapter< } else if (viewType == 1) { val view = parent.inflate(R.layout.customization_section_header) SectionViewHolder(view) - } - else { - val view = parent.inflate(R.layout.animal_overview_item) + } else if (viewType == 2) { + val view = parent.inflate(R.layout.pet_overview_item) + StableViewHolder(view) + } else { + val view = parent.inflate(R.layout.mount_overview_item) StableViewHolder(view) } @@ -70,15 +71,20 @@ class StableRecyclerAdapter : androidx.recyclerview.widget.RecyclerView.Adapter< } override fun getItemViewType(position: Int): Int { - return if (itemList[position] == "header") { + var item = itemList[position] + + return if (item == "header") { 0 } - else if (itemList[position].javaClass == String::class.java) { + else if (item.javaClass == String::class.java) { 1 } - else { + else if (itemType == "pets") { 2 } + else { + 3 + } } override fun getItemCount(): Int = itemList.size diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/stable/StableRecyclerFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/stable/StableRecyclerFragment.kt index ebbd660d2..b82bf9c92 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/stable/StableRecyclerFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/stable/StableRecyclerFragment.kt @@ -106,7 +106,8 @@ class StableRecyclerFragment : BaseFragment() { private fun setGridSpanCount(width: Int) { var spanCount = 0 if (context != null && context?.resources != null) { - val itemWidth: Float = context?.resources?.getDimension(R.dimen.pet_width) ?: 0.toFloat() + var animal_width = if (itemType == "pets") R.dimen.pet_width else R.dimen.mount_width + val itemWidth: Float = context?.resources?.getDimension(animal_width) ?: 0.toFloat() spanCount = (width / itemWidth).toInt() }