com.gongwen:marqueelibrary设置垂直滚动

com.gongwen:marqueelibrary设置垂直滚动

1.引入依赖

implementation ‘com.gongwen:marqueelibrary:1.1.3’

2.添加混合库

在 gradle.properties 添加 android.enableJetifier=true

3.布局xml

        <!--设置垂直:不要添加inAnimation和outAnimation即可!-->
        <com.gongwen.marqueen.SimpleMarqueeView
            android:id="@+id/simpleMarqueeView"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginStart="32dp"
            android:layout_marginEnd="16dp"
            android:flipInterval="2500"
            android:inAnimation="@anim/in_right"
            android:outAnimation="@anim/out_left"
            app:layout_constraintBottom_toBottomOf="@+id/textView"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/textView"
            app:layout_constraintTop_toTopOf="@+id/textView"
            app:marqueeAnimDuration="2000"
            app:smvTextColor="@color/black"
            app:smvTextEllipsize="end"
            app:smvTextGravity="center_vertical"
            app:smvTextSingleLine="true"
            app:smvTextSize="15sp" />

4.Java代码

        final List<String> datas = Arrays.asList("《赋得古原草送别》", "离离原上草,一岁一枯荣。", "野火烧不尽,春风吹又生。", "远芳侵古道,晴翠接荒城。", "又送王孙去,萋萋满别情。");
        //SimpleMarqueeView<T>,SimpleMF<T>:泛型T指定其填充的数据类型,比如String,Spanned等
        SimpleMF<String> marqueeFactory = new SimpleMF(getActivity());
        marqueeFactory.setData(datas);
        binding.simpleMarqueeView.setMarqueeFactory(marqueeFactory);
        binding.simpleMarqueeView.startFlipping();
        binding.simpleMarqueeView.setOnItemClickListener(new OnItemClickListener<TextView, String>() {
            @Override
            public void onItemClickListener(TextView mView, String mData, int mPosition) {
                /**
                 * 注意:
                 * 当MarqueeView有子View时,mView:当前显示的子View,mData:mView所填充的数据,mPosition:mView的索引
                 * 当MarqueeView无子View时,mView:null,mData:null,mPosition:-1
                 */
                Toast.makeText(getActivity(), String.format("mPosition:%s,mData:%s,mView:%s,.", mPosition, mData, mView), Toast.LENGTH_SHORT).show();
            }
        });
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值