2016-09-26 139 views
6

我需要一个在活动运行时自动保持水平滚动的面板。就像我们在电视上看到的滚动底栏一样(在新闻等方面)。任何想法如何实现这一目标?由于自动滚动面板

编辑:我发现有导游在此&库,看来我需要的词是“选取框”

+0

你需要这样的东西?:https://youtu.be/fwJqaGHoflE?t=5m42s – lidox

回答

4

你需要的是marquee,您可在Github

+0

这看起来像我需要的东西。我可以自定义这个水平滚动吗? – user6650650

+0

我认为你可以尝试改变'LinearLayout'的方向为'horizo​​ntal' –

1

您可以使用Vertical Marquee TextView for Android有一些变化的图书馆。

首先,下载库的源代码并将其添加到您的项目中。

接下来,请转到类VerticalMarqueeTextView并使其延伸HorizontalScrollView而不是ScrollView

最后,改变MarqueeRunnablerun方法,例如 -

@Override 
    public void run() { 
     final int width = textView.getWidth(); 
     final int parentWidth = this.parent.getWidth(); 

     if (width > 0 && parentWidth > 0 && width > parentWidth) { 
      if (this.textView.getScrollX() >= width) { 
       this.textView.scrollTo(-parentWidth,0); 
      } else { 
       this.textView.scrollBy(VerticalMarqueeTextView.this.unitDisplacement, 0); 
      } 

      this.textView.invalidate(); 
     } 
    } 

就是这样。

建议将库的字段和方法中的所有“垂直”参考更改为“水平”,以指示其当前使用情况。

请注意,这并没有经过彻底的测试,但它似乎工作。