사용하기 쉬운 윤방도 컨트롤: Clip Banner View

3279 단어
사용하기 쉬운 윤방도 컨트롤: Clip Banner View
코드가 Github에 연결되었습니다.
https://github.com/Lyzon/clip-banner-view
효과도:
demo.gif
어떻게 실현합니까
4
  • 이 윤방도 컨트롤러는 ViewPager의 가벼운 봉인을 바탕으로 정해진 시간에 임무를 수행하는 하위 라인을 열어 윤방도를 자동으로 재생한다

  • 4
  • 윤방도의 재단과 애니메이션 전환의 원리:android:clipChildren="false"와ViewPager.setPageTransformer 상세 정보는 참조http://blog.csdn.net/lmj623565791/article/details/51339751

  • 4
  • 레이아웃 로드, 콜백 클릭, 위조 무한 라운드 재생을 위한 사용자 정의 Pager Adapter 구현: Integer.MAX_VALUE.

  • 사용법
    사용은 정말 간단합니다. 반너의 데이터 구조와 이미지 로드 프레임워크 등과 완전히 결합됩니다.
     clipBannerView = (ClipBannerView) findViewById(R.id.banner_view);
                                                        
        clipBannerView.setAdapter(new ClipBannerAdapter(this,entityList.size(),this) {
            @Override
            public void setBannerContent(BannerItem item,int position){
                //need to override
                //load your image into   * item.bannerImage * ;
                //set text into   * item.bannerText * ;
                //simple : Glide.load(bannerList.get(position).imageUrl).into(item.bannerImage);
                //simple : item.bannerText.setText(bannerList.get(position).bannerTitle);
                //if banner didn't have title to show , you should do it : item.bannerText.setVisibility(View.GONE);
                Glide.with(MainActivity.this).load(entityList.get(position).imageUrl).into(item.bannerImage);
                item.bannerText.setText(entityList.get(position).bannerTitle);
                if(item.bannerText.getText().length() == 0)
                    item.bannerText.setVisibility(View.GONE);
            }
        });
        clipBannerView.start();
    

    Clip BannerView에 어댑터를 설정하고 set Banner Content 방법을 덮어쓰면 내용을 채울 수 있습니다.어댑터의 구조 함수를 살펴보십시오.
    ClipBannerAdapter(Context context,int size,OnBannerClickListener clickListener)
    

    Context, Banner의 수량을 입력하고 리셋된listener (null 가능) 를 누르면 됩니다.
    덮어쓰기가 필요한 내용을 채우는 방법을 보십시오.
     public void setBannerContent(BannerItem item,int position)
    

    여기에 데이터를 정확하게 채우기만 하면 완성된다.예를 들면 다음과 같습니다.
            @Override
    public void setBannerContent(BannerItem item,int position){
                //need to override
                //load your image into   * item.bannerImage * ;
                //set text into   * item.bannerText * ;
                //simple : Glide.load(bannerList.get(position).imageUrl).into(item.bannerImage);
                //simple : item.bannerText.setText(bannerList.get(position).bannerTitle);
                //if banner didn't have title to show , you should do it : item.bannerText.setVisibility(View.GONE);
                //    ,demo    glide
                Glide.with(MainActivity.this).load(entityList.get(position).imageUrl).into(item.bannerImage);
                //     
                item.bannerText.setText(entityList.get(position).bannerTitle);
                if(item.bannerText.getText().length() == 0)
                    item.bannerText.setVisibility(View.GONE);
    }
    

    그림을 item에 불러옵니다.bannerImage, 텍스트를item에 불러옵니다.bannerText, 문자가 없으면 item을 설정하십시오.bannerText.setVisibility(View.GONE);
    마지막으로 리셋 클릭 중:
    @Override
    public void onBannerClick(int position){
        //DO WHAT YOU WANT!!
    }
    

    큰일 났다~~~
    심플하고 사용하기 좋은 BannerView 하나로 완성~

    좋은 웹페이지 즐겨찾기