当前位置:天才代写 > tutorial > 安卓教程 > Android控件第5类——ViewAnimator

Android控件第5类——ViewAnimator

2021-02-19 14:06 星期五 所属: 安卓教程 浏览:663

 

 

1、ViewAnimator,承继自FrameLayout

  ViewAnimator是一个基类,它承继自FrameLayout。它的子类有ViewSwitcher和ViewFlipper;ViewSwitcher的子类有ImageSwitcher和TextSwitcher。

  与AdapterViewAnimator相近,它也是有android:inAnimation、android:outAnimation、android:animateFirstView特性

  出示了addView(View)方式,能够应用这一方式向ViewAnimator加上必须转换的View,随后应用showPrevious和showNext开展往前和向后的转换

 

2、ViewSwitcher,承继自ViewAnimator

  ViewSwitcher根据setFacotry(ViewFactory)关系到ViewFactory,ViewSwitcher所应用的View目标便是由这一ViewFactory出示。

  ViewFactory只申明了一个方式:public View makeView()。能够在这个方式中设定全部展现的View包括哪些室内空间,及其展现的款式。

  AdapterViewAnimator的子类中沒有与ViewSwitcher相匹配的类。能够将ViewSwitcher获得View的方法与AdapterViewAnimator较为,便于于记忆力。AdapterViewAnimator应用Adpater来结构View目标;ViewSwitcher不应用Adapter目标,它应用ViewFactory来结构View。并且AdapterViewAnimator所应用的数据信息都是在Adapter目标中;而ViewSwitcher相匹配的ViewFactory只结构View,View怎样展现由ViewFactory决策,可是所应用的数据信息,会此外出示,并不会反映在ViewFactory中。

  ViewSwitcher重写了addView(View)方式,假如应用addView(View)方式,会抛出异常。那样阻隔了根据addView(View)向ViewSwitcher中加上要转换的View的方法。能够在表明下一个View的部位(例如往左边滚动的事情中,或是点一下按键的事情中),根据ViewSwitcher目标的getNextView(),获得下一个View的目标。随后在这个View目标上加上数据信息,随后启用showNext方式。

  ViewSwitcher只储存了2个View(当今View和上一个View),因此 只有上溯前一个View。因此 假如启用ViewSwitcher目标的showPrevious方式,只有是在当今View和前一个View中间往返转换。

 

3、ImageSwitcher,承继自ViewSwitcher

  ImageSwitcher仅仅在ViewSwitcher的基本上开展了简易的改动,因此 二者有很多地区都很类似。例如,不可以应用addView(View),只储存2个ImageView,还包含必须应用ViewFactory这些。

  ImageSwitcher出示了setImageResource、setImageUri、setImageDrawable方式,能够根据这3个方式十分便捷的设定下一个View即将表明的內容。ViewSwitcher的操作方法在这里3个方式中早已有一定的反映,因此 不用依照ViewSwitcher的方法来应用ImageSwitcher。

  与ViewSwitcher不一样的是,ImageSwitcher的ViewFactory的makeView方式只有回到ImageView。由于上边提及的3个方式中,将ViewFactory传送回来的View强制转换变成ImageView。

 

4、TextSwitcher,承继自ViewSwitcher

  与ImageSwitcher类似,TextSwitcher也出示了一个setText方式,用以设定下一个TextView的文字。它也不可以应用addView、只保存2个TextView这些。

  TextSwitcher相匹配的ViewFactory的makeView方式也只有回到TextView。

  尤其的是,TextView出示了一个setCurrentText方式,用以设定当今TextView的文字。

  TextSwitcher尽管重写了addView方式,但仅仅加了一些限定,因此 仍然不可以应用addView方式。

 

5、ViewFlipper,承继自ViewAnimator

  ViewFlipper并沒有对ViewAnimator开展过多的改动,因此 ViewFlipper能够应用addView方式提升View。

  ViewSwitcher只有储存2个View,而ViewFlipper沒有那样的限定。

  ViewFlipper在ViewAnimator的基本上,出示了startFlipping和stopFlipping方式,用以逐渐和终止全屏播放;setFlipInterval用以设定全屏播放的时间间隔。

 

    关键字:

天才代写-代写联系方式