-1

Recyclerview に 2 枚のカードを実装し、2 つのビュー ホルダーも作成しましたが、アダプターのコードを取得できませんでした。

public class ViewHolder1 extends RecyclerView.ViewHolder {

    private TextView Chatin;

    public ViewHolder1(View v) {
        super(v);
        Chatin = (TextView) v.findViewById(R.id.Chatin);
    }

    public TextView getChatin() {
        return Chatin;
    }

    public void setChatin(TextView chatin) {
        this.Chatin = chatin;
    }


}

その他のビューホルダーはそのままです。

4

2 に答える 2

3

Recycler ビューで複数のカードを表示できます。

1) getItemViewType() メソッドをオーバーライドする

@Override
public int getItemViewType(int position) {

    switch (position) {
        case 0:
            return VIEW_TYPE_ONE;
        case 1:
            return VIEW_TYPE_TWO;
             .
             .
             .
        case n:
            return VIEW_TYPE_N;

        default:
            return DEFAULT_VIEW_TYPE;
    }
}

2) onCreateViewHolder() メソッドで viewType を確認します

 @Override
 public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
   switch (viewType) {
     case  VIEW_TYPE_ONE: 
      // return card one.  
          .
          .
          .
    }
 }

3) 位置で onBindViewHolder() のビュー タイプを確認し、それに応じてカードにデータを設定します。

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
     switch (getItemViewType(position)) {
        case VIEW_TYPE_ONE:
          ViewTypeOneViewHolder holderObj= (ViewTypeOneViewHolder) holder;
          //Your implementation for view type one.

          break;
          .
          .
          .
     }
 }
于 2016-11-18T05:38:11.783 に答える
2

はい、複数の cardView を使用できます。参照については、サンプル アダプターの以下のリンクを参照してください

この回答も役に立ちます。デザインの異なる 3 つの CardView に対して RecyclerView を 1 つだけ使用できますか?

このチュートリアルもご覧ください。 http://arjunu.com/2015/10/android-recyclerview-with-different-cardviews/ .

于 2016-11-18T05:05:13.440 に答える