genişleyen i diğer öğeler de bağlı genişletilmiş boyutu değil özgün biri recyclerview gayet genişler ama herhangi bir öğeyi genişletmek eğer recyclerview öğeyi
public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.MyViewHolder> implements View.OnClickListener {
private LayoutInflater inflater;
private Context mcontext;
private int mOriginalHeight = 0;
private boolean mIsViewExpanded = false;
public FeedAdapter(Context context) {
inflater = LayoutInflater.from(context);
mcontext = context;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View view = inflater.inflate(R.layout.custom_row, viewGroup, false);
MyViewHolder holder = new MyViewHolder(view);
holder.frame.setOnClickListener(this);
return holder;
}
@Override
public void onBindViewHolder(MyViewHolder myViewHolder, int i) {
}
@Override
public int getItemCount() {
return 100;
}
@Override
public void onClick(final View v) {
if (mOriginalHeight == 0) {
mOriginalHeight = v.getHeight();
}
ValueAnimator valueAnimator;
if (v.getHeight() < (mOriginalHeight + (int) (mOriginalHeight * 1.5))) {
valueAnimator = ValueAnimator.ofInt(mOriginalHeight, mOriginalHeight + (int) (mOriginalHeight * 1.5));
} else {
valueAnimator = ValueAnimator.ofInt(mOriginalHeight + (int) (mOriginalHeight * 1.5), mOriginalHeight);
}
valueAnimator.setDuration(300);
valueAnimator.setInterpolator(new LinearInterpolator());
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
Integer value = (Integer) animation.getAnimatedValue();
v.getLayoutParams().height = value.intValue();
v.requestLayout();
}
});
valueAnimator.start();
}
class MyViewHolder extends RecyclerView.ViewHolder {
FrameLayout frame;
public MyViewHolder(View itemView) {
super(itemView);
frame = (FrameLayout) itemView.findViewById(R.id.base);
}
}
}
aldı geri dönüşüm için, genişletilmiş bulundu recylerview aşağı kaydırırken bunu nasıl düzeltir ve öğeleri genişletmek ve daraltmak için daha iyi bir yol var mı?
Bu efekti nasıl elde ettiğinizi detaylandırabilir misiniz? – borax12
kullandığınız kod, hücreyi belirli bir boyuta genişlettikçe etkili değildi. Hücreleri genişletmenin daha iyi bir yolu, kodu [Here] (http://stackoverflow.com/a/13381228/4561402/) olarak kullanmaktır. Bu içeriği genişletmek için genişletir, çünkü hücreler aynı yükseklikte değil –
@mohabelmahdy tüm çalışma çözümünü sağlayabilir misiniz? PLease – goonerDroid