提前感谢您的帮助。我有一个使用多个ListViews的应用程序。我正在为Lollipop发布重新编写并将所有ListView转换为RecyclerViews。 3个转换中有2个是无缝的,但我有1个ListView,每个ViewHolder有几个EditTexts。在我将其转换为RecyclerView之后,'标签顺序'或者'关注订单'表现得很奇怪。
每个ViewHolder都有4个EditTexts。如果我开始编辑一个,然后按键盘上的“下一步”按钮,它会前进以编辑下一个EditText。现在,在视图必须滚动之前,大约有3个ViewHolders在屏幕上修复。一旦我点击了3个ViewHolders中的所有EditTexts,它就会跳回到开始编辑,而不是前进到第4个ViewHolder。
我确定它与RecyclerView仅在内存中容纳如此多的ViewHolders并回收它们有关,但我无法找到覆盖行为的位置,因此它会前进到下一个ViewHolder下来。它确实绑定了第4个ViewHolder,然后再跳回到顶部,但没有前进到它。
创建/实例化的代码:
adapter = new Adapter(this, R.layout.itemlayout, record.getRecords());
recyclerList = ((RecyclerView) findViewById(R.id.recyclerView));
recyclerList.setLayoutManager(new LinearLayoutManager(this));
recyclerList.setAdapter(adapter);
itemview xml ::
的适用部分<LinearLayout
android:id="@+id/LinearLayout9"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight=".275"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/LinearLayout8"
android:layout_width="fill_parent"
android:layout_height="200dp" >
<LinearLayout
android:id="@+id/LinearLayout5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/lblQtyOrd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_marginBottom="15dp"
android:layout_marginTop="10dp"
android:focusable="false"
android:text="@string/qty_ord"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<TextView
android:id="@+id/lblPackList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:focusable="false"
android:text="@string/packlist_qty"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<TextView
android:id="@+id/lblRcvQty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_marginTop="15dp"
android:focusable="false"
android:text="@string/rcv_qty"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
<TextView
android:id="@+id/lblLabelCount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_marginTop="27dp"
android:focusable="false"
android:text="@string/rcv_labelCount"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayout4"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/rcvQtyOrd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:focusable="false"
android:text="@string/qty_ord"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/RcvItmPackListQty"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:ems="12"
android:hint="@string/packlist_qty"
android:inputType="number|numberDecimal"
android:selectAllOnFocus="true"
android:maxLength="30" />
<EditText
android:id="@+id/RcvItmQty"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:ems="12"
android:hint="@string/rcv_qty"
android:selectAllOnFocus="true"
android:inputType="number|numberDecimal" />
<EditText
android:id="@+id/RcvLabelCount"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:ems="12"
android:hint="@string/rcv_labelCount"
android:inputType="number"
android:selectAllOnFocus="true" />
</LinearLayout>
</LinearLayout>
<EditText
android:id="@+id/rcvItmNote"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:ems="12"
android:hint="@string/rcv_note"
android:inputType="textCapSentences|textAutoCorrect"
android:imeOptions="actionNext"
android:lines="2"
android:maxLines="2" >
</EditText>
</LinearLayout>
任何想法都表示赞赏。非常感谢。