Understand the BGABanner architecture
masterBGABanner is a composite custom view that extends RelativeLayout. Instead of inheriting from ViewPager, it uses a composition pattern to wrap a BGAViewPager (a custom ViewPager) along with other UI elements like indicators, text tips, and placeholder images. This design allows indicators and text to be positioned freely as sibling views within the RelativeLayout container without interfering with the ViewPager logic.
Core Components:
BGAViewPager: A customViewPagerthat handles auto-play callbacks, user scroll permissions, and custom transition durations.mPointContainerRl: ARelativeLayoutcontainer for indicators (dots or numbers) and text tips (mTipTv).mPlaceholderIv: AnImageViewused as a placeholder while network images are loading.BGAPageTransformer: An abstract class used to define custom page transition animations.BGAOnNoDoubleClickListener: A utility used to prevent double-click events on banner items.