seatAdapter.notifyItemChanged(position);
原因分析:是因为TextView高度为wrap_content,如果改成match_parent,并且父布局高度写死,那么就OK,记录一下,方便以后碰到此问题,能尽快处理,
还有如果指定Item宽度为 match_parent 但是条目实际显示在屏幕上并不是match_parent,那么我的修改办法是加一条分割线,该分割线宽度为match_parent,如果不想要分割线,可以让分割线进行隐藏。
上面这个原因没有从源码的角度分析,本人能力也不够,希望以后可以从源码角度分析原因。
修改之前的布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="5dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/llSeatContainer"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/tvSeatId"
android:text="座位1"
android:gravity="center"
android:textColor="@color/black"
android:textSize="14sp" />
<ImageView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/ivIsSeatSelect"
android:layout_marginTop="3dp"
android:src="@drawable/shap_seat_no_selected" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="李三一"
android:id="@+id/tvSeatUserName"
android:textColor="@color/black"
android:textSize="14sp" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="总经理"
android:id="@+id/tvSeatUserPosition"
android:textColor="@color/black"
android:textSize="14sp" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="center"
android:text="18291777145"
android:id="@+id/tvSeatUserPhone"
android:textColor="@color/black"
android:textSize="14sp" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1px"
android:layout_marginTop="10dp"
android:background="@color/divide_line" />
</LinearLayout>
修改之后的布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:id="@+id/llSeatContainer"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:id="@+id/tvSeatId"
android:text="座位1"
android:gravity="center"
android:textColor="@color/black"
android:textSize="14sp" />
<ImageView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/ivIsSeatSelect"
android:layout_marginTop="3dp"
android:src="@drawable/shap_seat_no_selected" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="李三一"
android:id="@+id/tvSeatUserName"
android:textColor="@color/black"
android:textSize="14sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:text="总经理"
android:id="@+id/tvSeatUserPosition"
android:textColor="@color/black"
android:textSize="14sp" />
<TextView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:gravity="center"
android:text="18291777145"
android:id="@+id/tvSeatUserPhone"
android:textColor="@color/black"
android:textSize="14sp" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1px"
android:layout_marginTop="10dp"
android:background="@color/divide_line" />
</LinearLayout>