2016-04-02 2 views
0

Как вернуть высоту для каждой строки в RecycleView? Мне нужно это для высоты полосы прокрутки в RecycleView, например heightForRowAtIndexPath в iOS. У меня есть RecyclerView.Adapter для RecyclerView.Высота возврата для каждой строки в RecyclerView

class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> { 

private String[] items = {"My items"}; 


public static class ViewHolder extends RecyclerView.ViewHolder { 

    public View mTextView; 
    public ViewHolder(View v) { 
     super(v); 
     mTextView = v; 
    } 
} 

public MyAdapter(String[] myDataset) { 
    //items = myDataset; 
} 

@Override 
public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
    View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_view_text_item, parent, false); 
    ViewHolder vh = new ViewHolder(v); 
    return vh; 
} 

@Override 
public void onBindViewHolder(ViewHolder holder, int position) { 
    ((TextView)holder.mTextView.findViewById(R.id.textItemTextView)).setText(items[position]); 
} 

@Override 
public int getItemCount() { 
    return items.length; 
} 
} 

Но строки имеют разную высоту и изменяют прокрутку во время прокрутки.

ответ

0

Вы можете использовать следующее:

mRecyclerView.getLayoutManager().getDecoratedMeasuredHeight(mRecyclerView.getChildAt(index)); 
+0

Могу ли я использовать его для высоты рассчитайте все строки и установите его значение в высоту прокрутки? – user3449878

+0

Что значит «установить значение в прокрутке»? Вы можете использовать его для расчета высоты каждой строки в RecyclerView. – GVillani82

+0

Но мой свиток в RecycleView меняет высоту во время прокрутки. Я хочу рассчитать высоту всех строк и изменить ее на высоту прокрутки. – user3449878

Смежные вопросы