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