kotlin 循环视图宽度未对齐

rbpvctlc  于 2023-02-16  发布在  Kotlin
关注(0)|答案(2)|浏览(189)

我正在研究回收者的观点,但我面临一个问题:项目对齐方式不正确。2如何解决此问题?
我需要的项目,以匹配父的宽度。

我想要的

问题

代码:-适配器-类取消预订适配器(值数据: 列表,值回调:<CancelReasonsResponse.Data>取消预订回叫):回收器视图适配器(){ RecyclerView.Adapter<CancelBookingAdapter.ViewHolder>() {

var selectedPosition = -1
var comments = ""

class ViewHolder(val binding: CancelAdapterBinding) : RecyclerView.ViewHolder(binding.root)

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
    val binding = CancelAdapterBinding.inflate(LayoutInflater.from(parent.context),null,false)
    val lp = RecyclerView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)
    return ViewHolder(binding)
}
enter code here
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
    holder.binding.apply {
        tvReasonText.text = data[position].title

        if (selectedPosition == -1) {
            comments = ""
        }else {
            comments = data[position].title
        }

        if (selectedPosition == position) {
            llReason.setBackgroundResource(R.drawable.selected_box)
        }else {
            llReason.setBackgroundResource(R.drawable.cancel_outline)
        }

        llReason.setOnClickListener {
            selectedPosition = holder.adapterPosition
            callBack.onClickCheckBox(data[position].id, comments)
            selectedPosition = position
            notifyDataSetChanged()
        }
    }
}

override fun getItemCount(): Int {
    return data.size
}

}
接口取消预订回调{单击复选框(原因ID:内部备注:字符串)}
项目XML-

<androidx.appcompat.widget.LinearLayoutCompat
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <androidx.appcompat.widget.LinearLayoutCompat
        android:id="@+id/llReason"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="@dimen/_12sdp"
        android:gravity="center"
        android:background="@drawable/cancel_outline"
        android:layout_marginBottom="@dimen/_12sdp">

        <androidx.appcompat.widget.AppCompatTextView
            android:id="@+id/tvReasonText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:fontFamily="@font/space_grotesk_bold"
            android:gravity="center"
            android:text="@string/cancel_booking"
            android:textSize="14sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

    </androidx.appcompat.widget.LinearLayoutCompat>

</androidx.appcompat.widget.LinearLayoutCompat>
2hh7jdfx

2hh7jdfx1#

  • 安卓系统:布局宽度=“匹配父项”*
<androidx.appcompat.widget.AppCompatTextView
            android:id="@+id/tvReasonText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fontFamily="@font/space_grotesk_bold"
            android:gravity="center"
            android:text="@string/cancel_booking"
            android:textSize="14sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
mpbci0fu

mpbci0fu2#

使用此代码可以最大化宽度。
安卓系统:布局宽度=“匹配父项”或安卓系统:布局宽度=“0dp”
这段代码将帮助你居中文本
机器人:文本对齐=“中心”

<androidx.appcompat.widget.AppCompatTextView
            android:id="@+id/tvReasonText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textAlignment="center"
            android:fontFamily="@font/space_grotesk_bold"
            android:gravity="center"
            android:text="@string/cancel_booking"
            android:textSize="14sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

相关问题