0

以上の行がある場合、mTxtTextいくつかのビューを表示する必要があります。maxLinesCount私はこれらの質問をチェックしました:1番目2番目

私のgetView方法の結果として私が持っているもの:

mTxtText.setText(Html.fromHtml(output));
mTxtText.getViewTreeObserver().addOnGlobalLayoutListener(
        new OnGlobalLayoutListener() {

            @SuppressWarnings("deprecation")
            @Override
            public void onGlobalLayout() {

                if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
                    mTxtText.getViewTreeObserver()
                            .removeGlobalOnLayoutListener(this);
                } else {
                    mTxtText.getViewTreeObserver()
                            .removeOnGlobalLayoutListener(this);
                }

                if (isCollapseOn
                        && mTxtText.getLineCount() >= maxLinesCount) {
                    mTxtExpand.setVisibility(View.VISIBLE);
                } else {
                    mTxtExpand.setVisibility(View.GONE);
                }
            }
        });

しかし、非常に興味深い結果が得られました。このリスナーは、アダプター内の一部のアイテムに対してのみ呼び出され、他のアイテムの可視性mTxtExpandはランダムに設定されます。リストをスクロールすると、リスナーが呼び出されたアイテムでも間違ったビューが表示されます。

助けてくれてありがとう。

4

1 に答える 1