2

カスタム アダプターを更新していて、値を文字列配列からリストに変更する必要がありました。

コードは次のとおりです。

private final List<String> values;

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    View rowView = inflater.inflate(R.layout.comments_listadapter, parent, false);
    TextView textView = (TextView) rowView.findViewById(R.id.comments_label);
    ImageView imageView = (ImageView) rowView.findViewById(R.id.comments_menu);
    textView.setText(values[position]); // Needs to Change!

    String s = values[position]; // Needs to Change!

    imageView.setImageResource(R.drawable.up_down);

    return rowView;
}

変更が必要な 2 行にマークを付けました (それを List に変更すると、さらに変更が必要になるかどうかわかりません。

4

5 に答える 5

2
List<String> mStringList = Arrays.asList(values);

ここで、values は文字列配列です。Arrays クラスは にありjava.util packageます。

于 2014-10-29T06:17:00.593 に答える
1

私があなたの質問を正しく理解していれば、あなたは次のものを探しています:

String s = values.get(position);
textView.setText(s);
于 2012-06-27T01:03:50.967 に答える
0

String[] valuesつまり、あなたはなりたいものを持っているようですねList<String> values

変換を行う方法は次のとおりです。

List<String> listValues = new ArrayList<String>();

for(String s : values) {
    listValues.add(s);
}

次に、代わりにvalues[position]、あなたはそうしますlistValues.get(position)

于 2012-06-27T01:04:25.940 に答える
0

あなたの問題は正確には何ですか?への参照を変更する必要があるということですか

mList.get(position);
mList.add(position, string);
于 2012-06-27T01:04:38.950 に答える
0

これを試して

String s = getItem(position);
textView.setText(s); 
于 2012-06-27T01:03:29.113 に答える