項目中遇到清單頂部部分重疊在banner上,導緻banner訓示圖示被遮蓋,網上搜尋到的資源極少,部分建議通過自定義訓示器的方法,本人覺得實在是麻煩,特此附上個人解決方案。
private void setBannerIndicatorLocation() {
ViewGroup viewGroup = (ViewGroup) banner.getViewPager().getParent();
for (int i = 0; i < viewGroup.getChildCount(); i++) {
if (viewGroup.getChildAt(i).getId() == R.id.loPageTurningPoint) {
View group = viewGroup.getChildAt(i);
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) group.getLayoutParams();
layoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
layoutParams.setMargins(0,0,0,DimensUtil.getDimensValue(R.dimen.x60));
group.setLayoutParams(layoutParams);
}
}
}
提示:(ConvenientBanner 初始化之前進行設定)
原理:我們首先要找到indicator的父容器,但是源碼并沒有提供相關的get方法,茲以同級的viewPager擷取,後面的不必贅述。