垂直滚动公告(垂直跑马灯)

现在很多商城类的app经常会有一小段垂直轮播的公告,网上搜索了一下相关的内容,淘宝的首页有垂直头条
Github链接:
https://github.com/sfsheng0322/MarqueeView,在此感谢这位大腿。

使用方法也比较简单:xml里核心代码:

<comm.marqueeview.MarqueeView
            android:id="@+id/marqueeview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            app:mvAnimDuration="500"
            app:mvInterval="3000"
            app:mvTextColor="#ff0000"
            app:mvTextSize="14sp">
        </comm.marqueeview.MarqueeView>

根布局添加一句:

xmlns:app="http://schemas.android.com/apk/res-auto"

关于下面属性的设置,可以自定义:
mvAnimDuration 动画执行时间(滚动速度,值越小,滚动速度越快)
mvInterval 翻页时间间隔(每隔多长时间滚动下一条)
mvTextSize 文字大小
mvTextColor 文字颜色

在Activity中的使用也很简单:

package com.example.lenovo.marqueeview;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.List;
import comm.marqueeview.MarqueeView;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        MarqueeView marqueeView = (MarqueeView) findViewById(R.id.marqueeview);
        List<String> info = new ArrayList<>();
        info.add("公告内容1");
        info.add("公告内容2");
        info.add("公告内容3");
        marqueeView.startWithList(info);
        //每一项的点击事件监听
        marqueeView.setOnItemClickListener(new MarqueeView.OnItemClickListener() {
            @Override
            public void onItemClick(int position, TextView textView) {
                //执行需求的业务逻辑
                Toast.makeText(MainActivity.this, "点击了第"+position+"条公告", Toast.LENGTH_SHORT).show();
            }
        });
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容