diff --git a/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailFragment.kt index b0a7ae1a..4aacb370 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailFragment.kt @@ -6,6 +6,7 @@ import android.graphics.Rect import android.os.Bundle import android.text.TextUtils import android.view.View +import androidx.core.content.ContextCompat import androidx.core.net.toUri import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView @@ -115,6 +116,55 @@ class CharacterDetailFragment : BaseFragment( binding.ivCharacterBackground.load(detail.imageUrl) { crossfade(true) } // 기본 정보 + if (detail.gender != null) { + binding.tvGender.visibility = View.VISIBLE + binding.tvGender.text = detail.gender + + if (detail.gender == "남성") { + binding.tvGender.setTextColor( + ContextCompat.getColor( + requireContext(), + R.color.color_3bb9f1 + ) + ) + binding.tvGender.setBackgroundResource(R.drawable.bg_character_gender_male) + } else { + binding.tvGender.setTextColor( + ContextCompat.getColor( + requireContext(), + R.color.color_ff5c49 + ) + ) + binding.tvGender.setBackgroundResource(R.drawable.bg_character_gender_female) + } + } else { + binding.tvGender.visibility = View.GONE + } + + if (detail.age != null) { + binding.tvAge.visibility = View.VISIBLE + binding.tvAge.text = "${detail.age}세" + } else { + binding.tvAge.visibility = View.GONE + } + + if (detail.mbti != null) { + binding.tvMbti.visibility = View.VISIBLE + binding.tvMbti.text = detail.mbti + } else { + binding.tvMbti.visibility = View.GONE + } + + binding.llGenderAgeMbti.visibility = if ( + detail.mbti == null && + detail.age == null && + detail.gender == null + ) { + View.GONE + } else { + View.VISIBLE + } + binding.tvCharacterName.text = detail.name binding.tvCharacterStatus.text = when (detail.characterType) { CharacterType.CLONE -> "Clone" diff --git a/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailResponse.kt b/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailResponse.kt index 82e5a80e..c27e17aa 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailResponse.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/chat/character/detail/detail/CharacterDetailResponse.kt @@ -10,6 +10,8 @@ data class CharacterDetailResponse( @SerializedName("name") val name: String, @SerializedName("description") val description: String, @SerializedName("mbti") val mbti: String?, + @SerializedName("gender") val gender: String?, + @SerializedName("age") val age: Int?, @SerializedName("imageUrl") val imageUrl: String, @SerializedName("personalities") val personalities: CharacterPersonalityResponse?, @SerializedName("backgrounds") val backgrounds: CharacterBackgroundResponse?, diff --git a/app/src/main/res/drawable/bg_character_gender_female.xml b/app/src/main/res/drawable/bg_character_gender_female.xml new file mode 100644 index 00000000..dc617c32 --- /dev/null +++ b/app/src/main/res/drawable/bg_character_gender_female.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/src/main/res/drawable/bg_character_gender_male.xml b/app/src/main/res/drawable/bg_character_gender_male.xml new file mode 100644 index 00000000..2e28728a --- /dev/null +++ b/app/src/main/res/drawable/bg_character_gender_male.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/src/main/res/drawable/bg_character_info.xml b/app/src/main/res/drawable/bg_character_info.xml new file mode 100644 index 00000000..a3a55c50 --- /dev/null +++ b/app/src/main/res/drawable/bg_character_info.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/src/main/res/layout/fragment_character_detail.xml b/app/src/main/res/layout/fragment_character_detail.xml index cdaf717a..c4f7fec5 100644 --- a/app/src/main/res/layout/fragment_character_detail.xml +++ b/app/src/main/res/layout/fragment_character_detail.xml @@ -59,6 +59,48 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent"> + + + + + + + + + #333BB9F1 #672BFF #CCFFFFFF + #88FFFFFF #CC777777 #EC3AA6 #7849BC