最近在继续iPhone 业务的同时还需要重新拾起Android 。在有些生疏的情况下,决定从Android 源码中感悟一些Android 的风格和方式。在学习源码的过程中也发现了一些通用的模式,希望通过一个系列的文章总结和分享下。
    策略模式定义一系列算法,把它们一个个封装起来,并且使它们可以相互替换。该模式使得算法可独立于它们的客户变化。
    Android中的TabHost,每个Tab页面在Tab Indicator和Tab Content上都有很多种风格或者类型。这些都通过TabSpec指定。TabSpec就通过实现IndicatorStrategy接口的各种具体类进行不同风格的Tab Indicator的生成,同时通过实现ContentStrategy接口的各种具体类进行不同类型的Tab Content的生成。通过策略很好实现了动态切换。实现的类图如下:
Android和设计模式:策略模式_第1张图片