通知布局中的Ticker TextView

时间:2012-07-31 21:22:41

标签: android notifications

有没有办法让自定义TextView布局中的Notification看起来像一个自动收报机?我正在使用以下代码设置Notification布局。

mNotificaionView = new RemoteViews(getPackageName(), R.layout.status_bar);
mNotificaionView.setTextViewText(R.id.ticker, getLongText());
mNotification.contentView = mNotificaionView;

以及在status_bar.xml

TextView的以下内容
android:singleLine="true" 
android:ellipsize="marquee"
android:marqueeRepeatLimit ="marquee_forever"
android:scrollHorizontally="true"
android:focusable="true"
android:focusableInTouchMode="true" 

简言之,如何在TextView对象中创建RemoteViews之类的代码?

2 个答案:

答案 0 :(得分:1)

这应该有效,但只有在您的View具有焦点时才有效。 看到这个答案,它可能对你有帮助。 Android notification Marquee not working

答案 1 :(得分:1)

看看Any.DO SmallWidget(4x1)。

这是一个淡入淡出文本的自动收报机。这是一个AppWidget。它是如何工作的?

  • 为文本创建颜色数组,从不透明到透明再到不透明。
  • 创建一个警报,当触发它时,它将文本的颜色更改为上面数组中的当前颜色(将保存数组中的当前索引)。
  • 使闹钟创建另一个,为阵列中的下一个索引执行相同操作
  • 当索引位于数组的透明部分时 - 将文本更改为我们要显示的下一行
  • 当到达最后一个索引时,我们将重置数组的索引,并设置一个警报以重新启动整个事件。该闹钟将从那一刻起设置为大约5秒钟(为了给用户足够的时间来阅读文本)

问题 - 电池消耗。所有这些警报都不能很好地处理电池,但要先测试一下它是多么糟糕。

我从未在通知栏小部件上尝试过此操作,但由于它们是使用相同的技术构建的,因此可能会有效。

祝你好运!