/ / Ak sa posúvam nahor alebo nadol, moje obrázky sú redownloading a zmeniť pozície - android, listview, rolovať

Ak sa posúvam nahor alebo nadol, moje obrázky sú redownloading a meniace sa pozície - android, listview, rolovať

Dostávam obrazovú cestu zo služby a sťahujem zo služby a zobrazuje sa v zobrazení obrázka. Mojim problémom je, keď sa posúvam nadol alebo nahor Obrázky sa znova načítajú a menia tam pozície.

 public View getView(final int position, View convertView, ViewGroup parent) {

Log.d("getview:", "position=" + position);
View vi = convertView;
final ViewHolder holder;

if (convertView == null) {

vi = inflater.inflate(R.layout.my_asset_list_item, null);
// vi = inflater.inflate(R.layout.my_asset_list_item, parent,
// false);

holder = new ViewHolder();
holder.tvGroupTitle = (TextView) vi.findViewById(R.id.tvGroupTitle);
holder.tvGroupDescription = (TextView) vi
.findViewById(R.id.tvGroupDescription);
holder.imgscrollchild = (LinearLayout) vi
.findViewById(R.id.imgscrollchild);

vi.setTag(holder);
} else {
holder = (ViewHolder) vi.getTag();
}
if (data.size() <= 0) {

vi.setVisibility(View.GONE);

} else {

tempValues = null;
tempValues = (GroupsModel) data.get(position);
for (int k = 0; k < data.size(); k++) {

}
holder.tvGroupTitle.setText(tempValues.getName().toString());
holder.tvGroupDescription.setText(tempValues.getDescription().toString());
holder.imgscrollchild.removeAllViews();


if (tempValues.getItemmodel().size() == 0) {
return vi;
} else {

for (int i = 0; i < tempValues.getItemmodel().size(); i++) {
a = i;
Log.i("Index", String.valueOf(i));

holder.imgscrollchild.addView(createimg(tempValues.getItemmodel(), a));
Log.i("Index A", String.valueOf(a));

}

}

}
return vi;
}

odpovede:

1 pre odpoveď č. 1

Scrollview môžete použiť namiesto zobrazenia zoznamu. napr.

<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:focusable="true"
android:focusableInTouchMode="true" >

<LinearLayout
android:id="@+id/layoutLoadData"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
</ScrollView>
  • v súbore java.

    LinearLayout layoutLoadData=(LinearLayout)findViewById(R.id.layoutLoadData);
    
    
    for (int i = 0; i < adapter.getCount(); i++) {
    
    View view = adapter.getView(i, null, null);
    layoutLoadData.addView(view);
    }