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;
}

我已经标记了需要更改的两行(我不确定将其更改为列表是否需要更多更改?

4

5 回答 5

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

其中 values 是一个字符串数组。数组类在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 s = getItem(position);
textView.setText(s); 
于 2012-06-27T01:03:29.113 回答
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 回答