Android 图文垂直跑马灯

最近在维护老项目,老项目有一个地方需要修改,就是垂直跑马灯的问题,之前的垂直跑马灯是只有文字跑马灯,新版需要加上。

之前是用的MarqueeView,看了下源代码是只支持文字的,于是乎我就改了下原作者的源代码。

MarqueeView类之前作者的

    // 创建ViewFlipper下的TextView
    private TextView createTextView(CharSequence text, int position) {
        TextView tv = new TextView(mContext);
        tv.setGravity(gravity);
        tv.setText(text);
        tv.setTextColor(textColor);
        tv.setTextSize(textSize);
        tv.setSingleLine(singleLine);
        tv.setTag(position);
        return tv;
    }

原实现效果:


MarqueeView_Gif.gif

这里是只支持textview,然后我就改了改

     // 创建ViewFlipper下的View
    private View createView(int position) {
        Marquee marquee = marquees.get(position);
        View view = LayoutInflater.from(mContext).inflate(R.layout.view_marquee, null);
        ImageView ivMarquee = (ImageView) view.findViewById(R.id.ivMarquee);
        TextView tvMarquee = (TextView) view.findViewById(R.id.tvMarquee);
        tvMarquee.setText(marquee.getTitle());
        if (isImage) {
            ivMarquee.setVisibility(VISIBLE);
            Glide.with(mContext)
                    .load(marquee.getImgUrl())
                    .placeholder(R.mipmap.ic_launcher)
                    .dontAnimate()
                    .into(ivMarquee);
        }
        tvMarquee.setTextSize(textSize);
        view.setTag(position);
        return view;
    }

改了之后实现效果:


垂直跑马灯.gif

就这样简单
源码地址:MyDemo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,821评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,262评论 4 61
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,626评论 0 17
  • 如果不在意是否文从字顺、逻辑自洽,而更多关注作者脑洞和青春强愁的话,这本书可以一看。 集中三天的零碎时间看完了。想...
    维度打击阅读 171评论 0 1
  • 警惕。 警惕宏大叙事。 宏大叙事容易让人忽略自身,而将自身外化,与某种强大的机器连接起来。从而陷入虚无的快感。 例...
    流噪阅读 874评论 0 1