2017-11-26 15 views
0

私のrecyclerviewAdapteronBindViewHolderの方法では、データを取得して名前のリストを作成しようとしています。ここでdataListは、一部の属性を持つタイプOptionsのリストであり、タイプはgetProductOptionValueItemListです。私が得ようとしている名前はOptionsのリストの中にあるので、私はそれらを得るためにループする必要があります。
ループ数は項目数に応じて正しく実行されますが、メソッドを呼び出しても、問題はitem.getName()は常に同じ値を返します。arraylistの繰り返し値

注:の値は最初の要素です。私のコード

final Options data = dataList.get(position); 

    holder.optionsNameTV.setText(data.getName()); 
    final List<String> options = new ArrayList<>(); 

    for (int i = 0; i < data.getProductOptionValueItemList().size(); i++) { 
     ProductOptionValueItem item = data.getProductOptionValueItemList().get(i); 
     Log.e("Option", " option name = "+ item.getName()); 
     options.add(item.getName()); 
    } 
+1

'data.getProductOptionValueItemList()。get(i)'がリストを循環させながら正しい値を返すかどうかをデバッグしてみてください –

答えて

0

data.getProductOptionValueItemList()をチェックできますか? すべての要素が同じである可能性があるため、同じ値を返すとitem.getName()が返されます。

0

これはタイプミスです。 JSONデータの解析中にarrayindexを渡しました。対応するindex(ネストされたインデックス)では、オブジェクトのリストに正しい値が追加され、getProductOptionValueItemListは正しい値を返します。

関連する問題