zoukankan      html  css  js  c++  java
  • Android com.daimajia.slider.library.SliderLayout 去掉底部半透明标题背景

    com.daimajia.slider.library.SliderLayout 是挺好用的轮播图控件,但是底部灰色背景有时候用不到,所以得去掉。

    sliderLayout.setCustomAnimation(new DescriptionAnimation()); 这个方法是设置灰色背景动画

    我们重新写一个类DescriptionAnimation1,内容同DescriptionAnimation,

    import android.view.View;
    
    import com.daimajia.slider.library.Animations.BaseAnimationInterface;
    import com.daimajia.slider.library.R;
    import com.nineoldandroids.animation.ObjectAnimator;
    import com.nineoldandroids.animation.ValueAnimator;
    import com.nineoldandroids.view.ViewHelper;
    
    /**
     * A demo class to show how to use {@link com.daimajia.slider.library.Animations.BaseAnimationInterface}
     * to make  your custom animation in {@link com.daimajia.slider.library.Tricks.ViewPagerEx.PageTransformer} action.
     */
    public class DescriptionAnimation1 implements BaseAnimationInterface {
    
        @Override
        public void onPrepareCurrentItemLeaveScreen(View current) {
            View descriptionLayout = current.findViewById(R.id.description_layout);
            if(descriptionLayout!=null){
                current.findViewById(R.id.description_layout).setVisibility(View.INVISIBLE);
            }
        }
    
        /**
         * When next item is coming to show, let's hide the description layout.
         * @param next
         */
        @Override
        public void onPrepareNextItemShowInScreen(View next) {
            View descriptionLayout = next.findViewById(R.id.description_layout);
            if(descriptionLayout!=null){
                next.findViewById(R.id.description_layout).setVisibility(View.INVISIBLE);
            }
        }
    
    
        @Override
        public void onCurrentItemDisappear(View view) {
    
        }
    
        /**
         * When next item show in ViewPagerEx, let's make an animation to show the
         * description layout.
         * @param view
         */
        @Override
        public void onNextItemAppear(View view) {
    
            View descriptionLayout = view.findViewById(R.id.description_layout);
            if(descriptionLayout!=null){
                float layoutY = ViewHelper.getY(descriptionLayout);
                view.findViewById(R.id.description_layout).setVisibility(View.GONE);
                ValueAnimator animator = ObjectAnimator.ofFloat(
                        descriptionLayout,"y",layoutY + descriptionLayout.getHeight(),
                        layoutY).setDuration(500);
                animator.start();
            }
    
        }
    }

    红色代码,把背景隐藏掉就行了,然后 sliderLayout.setCustomAnimation(new DescriptionAnimation1());

  • 相关阅读:
    vue项目常用
    centos7之关于时间和日期以及时间同步的应用
    nginx 配置 https
    nginx 转发 minio 服务
    MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。
    SpringCloud第三弹(Feign客户端)
    IDEA代码里的黄色提示
    H3C配置tftp参数,搭配WDS,windows部署服务器。
    手动为nextclou添加插件(Collabora Online 在线OFFICE)
    nextcloud集成LDAP登录
  • 原文地址:https://www.cnblogs.com/qzdf/p/10260121.html
Copyright © 2011-2022 走看看