2017-08-30 7 views
-3

ヘルプ。リサイクルビューで水平リサイクルビューが必要です。一部のアイテムでは、私はそれを必要とします。複数のアイテムの高さを持つRecyclerView

protected void convert(BaseViewHolder helper, DynamicsModel item) { 


        RecyclerView recyclerView = helper.getView(R.id.rvCommentImg); 
        if (item.getImg_urls() != null) { //if img not null 
         recyclerView.setVisibility(View.VISIBLE); 
         String[] a = item.getImg_urls().split(","); 
         List<String> imgs = new ArrayList<>(); 
         Collections.addAll(imgs, a); 
         setCommentImgs(recyclerView, imgs); 

        }else { //if none img ,GONE the recyclerView 

         recyclerView.setVisibility(View.GONE); 
        } 

        break; 

     } 
    }; 

これは動作し、画像を表示します。しかし、内部のrecyclerViewがなくなったとき、アイテムの高さは変更されませんでした。複数のアイテムの高さが必要です...

+0

投稿アイテムxml –

+0

水平スクロールビューが必要な場合は、ビューページャーの使用はどうですか? –

答えて

0

ありがとう、私はMultiTypeItemを使用してBrvahAdapterでこの問題を解決しました。

public DynamicsAdapter(List<DynamicsModel> data, boolean isMyDynamics) { 
    super(data); 
    addItemType(Constants.SHARE_VIDEO, R.layout.dynamics_share_video); 
    addItemType(Constants.SHARE_GAIN, R.layout.dynamics_share_gain); 

    this.isMyDynamics = isMyDynamics; 
} 

@Override 
protected void convert(BaseViewHolder helper, final DynamicsModel item) { 

    helper.setText(R.id.tvDynamicsDate, formatData); 
    switch (helper.getItemViewType()) { 
     case Constants.SHARE_VIDEO: //todo in R.layout.dynamics_share_video 
      break; 
     case Constants.SHARE_GAIN://todo in R.layout.dynamics_share_gain 
     break; 
    } 
} 
関連する問題