|
@@ -19,7 +19,7 @@ import com.yingyangfly.baselib.ext.getScaleAnimation
|
|
class RecommendDoctorAdapter(override val layoutId: Int = R.layout.item_recommend_doctor) :
|
|
class RecommendDoctorAdapter(override val layoutId: Int = R.layout.item_recommend_doctor) :
|
|
BaseDataBindingAdapter<DoctorBean, ItemRecommendDoctorBinding>() {
|
|
BaseDataBindingAdapter<DoctorBean, ItemRecommendDoctorBinding>() {
|
|
|
|
|
|
- var onClickListener: ((bean: DoctorBean) -> Unit)? = null
|
|
|
|
|
|
+ var onClickListener: ((bean: DoctorBean, type: String) -> Unit)? = null
|
|
|
|
|
|
@SuppressLint("ClickableViewAccessibility")
|
|
@SuppressLint("ClickableViewAccessibility")
|
|
override fun onBindViewHolder(
|
|
override fun onBindViewHolder(
|
|
@@ -35,7 +35,6 @@ class RecommendDoctorAdapter(override val layoutId: Int = R.layout.item_recommen
|
|
3, priceSpannableString.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
3, priceSpannableString.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
)
|
|
)
|
|
binding.tvPrice.text = priceSpannableString
|
|
binding.tvPrice.text = priceSpannableString
|
|
-
|
|
|
|
val consultationTotal = "咨询量:" + item.consultationTotal
|
|
val consultationTotal = "咨询量:" + item.consultationTotal
|
|
val spannableString = SpannableString(consultationTotal)
|
|
val spannableString = SpannableString(consultationTotal)
|
|
spannableString.setSpan(
|
|
spannableString.setSpan(
|
|
@@ -43,6 +42,29 @@ class RecommendDoctorAdapter(override val layoutId: Int = R.layout.item_recommen
|
|
3, spannableString.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
3, spannableString.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
|
|
)
|
|
)
|
|
binding.tvConsult.text = spannableString
|
|
binding.tvConsult.text = spannableString
|
|
|
|
+
|
|
|
|
+ binding.doctorLayour.setOnTouchListener { v, event ->
|
|
|
|
+ when (event.action) {
|
|
|
|
+ MotionEvent.ACTION_DOWN -> {
|
|
|
|
+ if (v.id == R.id.doctorLayour) {
|
|
|
|
+ v.startAnimation(getScaleAnimation())
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ MotionEvent.ACTION_UP -> {
|
|
|
|
+ if (v.id == R.id.doctorLayour) {
|
|
|
|
+ v.startAnimation(getEndAnimation())
|
|
|
|
+ onClickListener?.invoke(item, "doctor")
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ MotionEvent.ACTION_CANCEL -> {
|
|
|
|
+ if (v.id == R.id.doctorLayour) {
|
|
|
|
+ v.startAnimation(getEndAnimation())
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ true
|
|
|
|
+ }
|
|
|
|
+
|
|
binding.btnConsultation.setOnTouchListener { v, event ->
|
|
binding.btnConsultation.setOnTouchListener { v, event ->
|
|
when (event.action) {
|
|
when (event.action) {
|
|
MotionEvent.ACTION_DOWN -> {
|
|
MotionEvent.ACTION_DOWN -> {
|
|
@@ -53,7 +75,7 @@ class RecommendDoctorAdapter(override val layoutId: Int = R.layout.item_recommen
|
|
MotionEvent.ACTION_UP -> {
|
|
MotionEvent.ACTION_UP -> {
|
|
if (v.id == R.id.btnConsultation) {
|
|
if (v.id == R.id.btnConsultation) {
|
|
v.startAnimation(getEndAnimation())
|
|
v.startAnimation(getEndAnimation())
|
|
- onClickListener?.invoke(item)
|
|
|
|
|
|
+ onClickListener?.invoke(item, "consult")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
MotionEvent.ACTION_CANCEL -> {
|
|
MotionEvent.ACTION_CANCEL -> {
|