我在收到某些TextSwitcher
时使用broadcasts
自动切换文字,并为此TextSwitcher添加幻灯片放入/缩小动画。但有时(如30%的时间)当TextSwitcher
从最后一个文本视图切换到最后一个文本视图时,会发生闪烁。
我看到的是State4
滑出,State5
滑入,当State5
没有完全滑入时,State4
再次回来并滑出,然后State5
滑入。我已经检查了日志并打印了每个广播,他们按照正确的顺序收到了。在我看来,这个用户界面非常奇怪。
有谁知道为什么会这样?感谢!!!
一些代码:
<TextSwitcher
android:id="@+id/ts1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1" />
我使用setFactory
设置TextView
的{{1}}。
TextSwitcher
文本将按顺序从1切换到5,而5是结束状态。不知道为什么有时5会闪回4然后再闪5。我还检查了 TextView textView = (TextView) textSwitcher.getCurrentView();
switch (state) {
case state1:
text = state1;
break;
case state2:
text = state2;
break;
case state3:
text = state3;
break;
case state4:
text = state4;
break;
case state5:
text = state5;
break;
default:
break;
}
if (!textView.getText().toString().equals(text))
textSwitcher.setText(text);
中的当前文字是否与下一个文本相同,我们不会textSwitcher
这样做,因此不会执行任何动画。
setText()
在初始化期间调用这两个方法。