2016-11-02 3 views

答えて

0

リストは、それよりも少ないオブジェクトでリフレッシュするため、リストが先頭に移動している可能性があります。あなたができることは、まずリストの現在の位置(スクロール)を保存し、新しい項目をロードして、スクロールを保存された位置に戻すように設定します。

保存された位置がリストのサイズより大きくないことを確認してください。最後の項目までスクロールする必要があります。

0

これはおそらく、新しいデータがAPIから取得されるたびにアダプタを起動しているためです。それがnullであるか、そうでなければ、単にデータをデータ

public void repopulateData(ArrayList<DeliveryChargeData> data) { 
    this.deliveryChargeData = null; 
    this.deliveryChargeData = data; 
    notifyDataSetChanged(); 
    } 
を更新するためのアダプタクラスでこの

if (list_delivery_charge.getAdapter() == null) { 
    deliveryAdapter = new DeliveryAdapter(getActivity(), deliveryData1); 
    list_delivery_charge.setAdapter(deliveryAdapter); 
    } 
    else { 
     deliveryAdapter.repopulateData(deliveryData1); 
     } 

使用を更新します場合

使用はactivity.It'llでこのコードは、アダプタを開始します

これは、新しいアイテムがリストに追加されるたびにリストビューの最初のアイテムへのジャンプを止めるのを助けました。

+0

コードを理解できません –

関連する問題