他们都继承ViewAnimator
。我知道ViewSwitcher
只允许两个视图,而ViewFlipper
允许更多。但是,为什么Android会创建ViewSwitcher
,如果只是ViewFlipper
有2个观看次数?还有其他差异吗?在什么条件下使用优于另一个的?
答案 0 :(得分:80)
据我所知,如果你想像你说的那样在两个视图之间切换,可以使用ViewSwitcher。有用的话,如果你有2个视图,你必须定期来回走动。如果你想使用它,那么该类会实现一个ViewFactory。
但是,如果要定期更改视图,可以使用ViewFlipper。像某种自动翻转书一样说。虽然定制适配器库在这方面要好得多。
是的,就是这样。它们确实没有ViewAnimator那么有用。 Android开发为什么会让我发现任何东西都是一个谜。
我通常更喜欢使用ViewAnimator,因为它为您提供了更多的自由度,因此可以灵活设计。但是如果你想要像ViewFactory这样的功能,你只有2个视图,请使用ViewSwitcher。如果您希望能够定期更改视图,请使用ViewFlipper。如果您不需要使用ViewAnimator。
答案 1 :(得分:15)
ViewFlipper支持两个以上的视图,ViewSwitcher仅支持2个。
答案 2 :(得分:7)
我不确定它们之间是否存在任何重大差异,但从我收集的内容来看,不同之处在于ViewSwitcher用于视图相同但数据不同的情况 - 就像在日历应用上一样 - 我们只是更改视图中的数据。
答案 3 :(得分:0)
应用小部件中允许使用ViewFlipper,而ViewSwitcher则不允许。
https://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayout