2016-10-19 164 views
1

我有一些關於在RecyclerView中使用卡片滾動的問題。還有一些額外的差距,當我滾動RecyclerView裏面,你可以看到它在這個GIF:Recyclerview滾動故障

這是我的適配器。這是因爲片段還是什麼?

public class PosItemAdapter extends RecyclerView.Adapter<PosItemAdapter.MyViewHolder> { 

    private List<Item> itemList; 
    private ArrayList<CartItem> cartList; 
    private Boolean isMixed = false; 

    public class MyViewHolder extends RecyclerView.ViewHolder { 
     public final View mView; 
     public ImageView picture; 
     public TextView name; 
     public TextView desc; 
     public TextView price; 

     public MyViewHolder(View view) { 
      super(view); 
      mView = view; 
      picture = (ImageView) view.findViewById(R.id.list_pos_item_picture); 
      name = (TextView) view.findViewById(R.id.list_pos_item_name); 
      price = (TextView) view.findViewById(R.id.list_pos_item_price); 

     } 
    } 

    public PosItemAdapter(ArrayList<Item> itemList, Boolean isMixed) { 
     this.itemList = itemList; 
     this.isMixed = isMixed; 
    } 

    public Item getValueAt(int position) { 
     return itemList.get(position); 
    } 

    @Override 
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     View itemView = LayoutInflater.from(parent.getContext()) 
       .inflate(R.layout.list_pos_item_layout, parent, false); 

     return new MyViewHolder(itemView); 
    } 

    @Override 
    public void onBindViewHolder(final MyViewHolder holder, final int position) { 


     holder.mView.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 


      } 
     }); 
    } 

    @Override 
    public int getItemCount() { 
     if (itemList != null) { 
      return itemList.size(); 
     } else { 
      return 0; 
     } 

    } 
} 
+0

提供了一些代碼 –

+0

因爲我不能告訴你是否已經正確實現了'RecyclerView',所以我會將你指向這個[document](https://developer.android.com/guide/topics/graphics /hardware-accel.html),請查看底部的提示和技巧。您也可以嘗試禁用視圖上的硬件加速,並查看行爲是否發生變化。所有設備是否都顯示相同的工件? –

+0

我在使用少量動畫時遇到類似問題。你有沒有嘗試刪除動畫? –

回答

1

解決了,問題是我的卡片高度。我設置了wrap_content並修復了故障。

+0

將cardsize設置爲wrap_content時要小心。如果您的信用卡內容發生變化,即使這些信息的尺寸不同,它可能會導致回收站視圖意外滾動。嘗試在綁定期間以編程方式設置卡片高度。 – CatalystNZ