(Androidのメーカー)を変更します。行は、私はこのチュートリアルに従うことによって、マルチカラムリストビューを作成しようとしました
レコードの量が非常に多く、ビュー全体が電話機の画面を超えたときに問題が発生しました。今私がスクロールすると、行のいずれかのレコードがすべて変更されています(値が変更されています)。他の行はすべて完璧です。何が問題なの?
public class ListViewAdapters extends BaseAdapter{
public ArrayList<HashMap<String, String>> list;
Activity activity;
TextView txtFirst;
TextView txtSecond;
TextView txtFourth;
public ListViewAdapters(Activity activity, ArrayList<HashMap<String, String>> list){
super();
this.activity=activity;
this.list=list;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
HashMap<String, String> map=list.get(position);
LayoutInflater inflater=activity.getLayoutInflater();
if(convertView == null)
{
if(map.get(MARKED)=="no")
{
convertView=inflater.inflate(R.layout.colmn_row, null);
}
else if (map.get(MARKED)=="yes")
{
convertView=inflater.inflate(R.layout.colmn_row_clicked, null);
}
txtFirst=(TextView) convertView.findViewById(R.id.name);
txtSecond=(TextView) convertView.findViewById(R.id.gender);
txtFourth=(TextView) convertView.findViewById(R.id.status);
}
txtFirst.setText(map.get(FIRST_COLUMN));
txtSecond.setText(map.get(SECOND_COLUMN));
txtFourth.setText(map.get(FOURTH_COLUMN));
return convertView;
}
}
行がchanging..meansですがアイテムの位置を変更しますか? –
その値が変更されます。 – Mike
BaseAdapter –