在Fragment 的 onActivityResult
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == REQUEST_CHOOSE_HOROSCOPE && resultCode == Activity.RESULT_OK) {
//获取选择的星座
val horoscopeDate = data?.getParcelableExtra<HoroscopeDateBean>(KEY_HOROSCOPE_DATA)
mSelectedHoroscopeBean = horoscopeDate
//更新选择匹配星座数据
horoscopeDate?.let {
setCardStateAfterSelectHoroscope(it)
}
}
}
private fun setCardStateAfterSelectHoroscope(it: HoroscopeDateBean) {
//清除已经匹配的信息
mHoroscopeCompatibilityInfo = null
changeLeftCardToFriendship = false
changeRightCardToCareer = false
cl_card_mid.visibility = View.GONE
cl_card_left.translationX = 0f
cl_card_right.translationX = 0f
iv_card_center_left.visibility = View.VISIBLE
tv_card_title_left.text = ResUtils.getString(R.string.capricorn)
tv_card_des_left.text = ResUtils.getString(R.string.capricorn_date)
tv_card_title_right.text = it.nameKorean
tv_card_des_right.text = it.date
iv_card_center_right.visibility = View.VISIBLE
cl_card_right.setBackgroundResource(R.drawable.card_compatibility_red)
tv_card_title_right.setTextColor(ResUtils.getColor(R.color.text_colorful_yellow_ffec50))
tv_card_des_right.setTextColor(ResUtils.getColor(R.color.text_colorful_yellow_e39b2a))
val name = it.name.toLowerCase(Locale.US)
val drawableName = "ic_horoscope_$name"
tv_title.text = ResUtils.getString(R.string.title_compare, it.nameKorean/*.toFirstUpperCase()*/)
val drawable = ResUtils.getDrawableByName(drawableName)
drawable?.let {
iv_card_center_right.setImageDrawable(it)
}
btn_start.text = ResUtils.getString(R.string.start)
}
xml
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_card_right"
android:layout_width="104dp"
android:layout_height="150dp"
android:layout_marginStart="24dp"
android:layout_marginTop="33dp"
android:background="@drawable/card_compatibility_null"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/cl_card_left"
app:layout_constraintTop_toBottomOf="@id/tv_title">
<TextView
android:id="@+id/tv_card_title_right"
style="@style/text_white_std"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="14dp"
android:text=""
android:textAllCaps="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:id="@+id/tv_card_des_right"
style="@style/text_white_std"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="14dp"
android:text=""
android:textAllCaps="false"
android:textColor="@color/text_colorful_yellow_e39b2a"
android:textSize="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"/>
<ImageView
android:id="@+id/iv_card_center_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="6dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>
-
文字未显示
ConstraintLayout问题00.jpg
cl_card_left.bringToFront()
cl_card_right.bringToFront()
cl_card_left.bringToFront()
后又 文字未对齐
![](https://img.haomeiwen.com/i4413843/90a99d69d2ff0bd6.png)
修改 layout_width="0dp" android:gravity="center"
<TextView
android:id="@+id/tv_card_des_right"
style="@style/text_white_std"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginBottom="14dp"
android:gravity="center"
android:text=""
android:textAllCaps="false"
android:textColor="@color/text_colorful_yellow_e39b2a"
android:textSize="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"/>
可以看出图片还有问题
![](https://img.haomeiwen.com/i4413843/dfe360f34fbe3449.jpg)
修改
<ImageView
android:id="@+id/iv_card_center_right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="6dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
为
<ImageView
android:id="@+id/iv_card_center_right"
android:layout_width="0dp"
android:layout_height="0dp"
android:paddingTop="6dp"
android:scaleType="center"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
终于ok了
网友评论