欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android实现图文垂直跑马灯效果

程序员文章站 2023-08-13 15:31:03
最近在维护老项目,老项目有一个地方需要修改,就是垂直跑马灯的问题,之前的垂直跑马灯是只有文字跑马灯,新版需要加上。 之前是用的marqueeview,看了下源代码是只支持...

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

之前是用的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;
 }

原实现效果:

Android实现图文垂直跑马灯效果

这里是只支持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;
 }

改了之后实现效果:

Android实现图文垂直跑马灯效果

就这样简单

源码地址:mydemo

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。