次のコードでは、JSON 解析を行って結果をリストビューに表示しています。私が直面している問題は、リストビューをスクロールするたびに、リストビューのコンテンツの位置が変更されることです。宿泊施設がリストの最初の項目にある場合、下にスクロールすると、リストの最後の項目として、または他の位置に宿泊施設が再び表示されます。私のlog-catは適切な結果を示していますが、リストビューは示していません。リストに適切な結果が表示されないのはなぜでしょうか。
質問する
2395 次
2 に答える
2
以下のようにviewHolderパターンに従ってみてください
ViewHolder holder;
if(convertView == null)
{
holder = new ViewHolder();
convertView = mInflater.inflate(R.layout.cat_content, null);
holder.name = (ImageView)convertView.findViewById(R.id.name);
convertView.setTag(holder);
}
else
{
holder = (ViewHolder) convertView.getTag();
}
item = new HashMap<String, String>();
item = data.get(position);
holder.name.setText(item.get(CATEGORY_NAME));
return convertView;
class ViewHolder
{
TextView name;
}
于 2012-08-22T10:52:58.417 に答える
0
それがあなたを助けるならば、あなたのgetViewをこのように変更してください..
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = inflater.inflate(R.layout.cat_content, null);
}
name = (TextView) convertView.findViewById(R.id.name);
item = new HashMap<String, String>();
item = data.get(position);
name.setText(item.get(CATEGORY_NAME));
return convertView;
}
于 2012-08-22T10:52:21.600 に答える