Я хочу иметь возможность расширять строки в моем ListView с помощью анимации. Поэтому мне нужно знать высоту расширяемого представления. Я использую это в методе getView()
моего ArrayAdapter
:
mDetailsView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
mDetailsView.getViewTreeObserver().removeGlobalOnLayoutListener(this);
onClickListener.setHeight(mDetailsView.getHeight());
mDetailsView.setVisibility(View.GONE);
}
});
Это отлично работает для строк, которые отображаются на экране при запуске, но когда я прокручиваю вниз, метод onGlobalLayout
не вызывается для строк, которые сначала не были видны.
Как получить высоту для этих строк?