首页 > 代码库 > 9、?创建向后兼容的用

9、?创建向后兼容的用

? 抽象UI接口

对于很多UI接口,不同版本的Android会提供不同的接口。例如, Tab,在Level = 11(Android3.0 Honeycomb)中使用ActionBar,而 在更低版本的Android中没有ActionBar,但可以用Tab控件代替。

对于这些情况,如果要开发适应于所有版本的Android应用,就需 要对这些UI接口进行抽象。通常使用接口或抽象类。并利用多态满足不 同Android版本的需求。 

? 创建一个Tag抽象类

? 抽象ActionBar.Tab 

 1 public abstract class CompatTab { 2     ... 3     public abstract CompatTab setText(int resId);  4     public abstract CompatTab setIcon(int resId);  5     public abstract CompatTab setTabListener( 6     CompatTabListener callback); 7     public abstract CompatTab setFragment(Fragment fragment); 8     public abstract CharSequence getText(); 9     public abstract Drawable getIcon();10     public abstract CompatTabListener getCallback(); 11     public abstract Fragment getFragment();12 ...13 }

 

? 对老版本实现Tag抽象类

 

? 检测当前的Android版本 

 

 

 

 

 

 

 

9、?创建向后兼容的用