ViewGroup 内のいずれかのビューが HorizontalScrollView であるかどうかを調べようとすると、何らかの理由でこのコードがうまく機能しません。誰かが私が間違っていることを理解するのを手伝ってくれるなら、私はそれを感謝します.
レイアウトに水平スクロール ビューがあり、それが渡している ViewGroup の子であることは確かです。
private boolean isAnyViewHorizontallyScrollable(ViewGroup viewGroup) {
for (int i=0; i < viewGroup.getChildCount(); i++) {
if (viewGroup.getChildAt(i) instanceof HorizontalScrollView) {
Log.d(TAG, "Found a horizontal scroll view");
return true;
} else if (viewGroup.getChildAt(i) instanceof ViewGroup) {
isAnyViewHorizontallyScrollable((ViewGroup)viewGroup.getChildAt(i));
}
}
return false;
}