文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
TitleBar 重构 - 使用策略模式、舍弃代理模式
代理模式
之前的使用如下。Activity 和 Fragment 同时 implement AppTitle
public abstract class BaseActivity extends Activity implements Handler.Callback, AppTitle {
public class BaseFragment extends Fragment implements AppTitle
修改后的
public class BaseFragment extends Fragment {
private AppTitle appTitle;
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
Log.d("fragment:onCreateView", getView());
//
appTitle = new TitleMgr(getActivity(), getView());
appTitle.initTitle();
}
public AppTitle getAppTitle() {
return appTitle;
}
public void setAppTitle(AppTitle appTitle) {
this.appTitle = appTitle;
}
采用策略模式
如果某个 BaseFragment 的样式不太一样,可以重新 AppTitle 模块。同时又不影响整体 app 的使用。
默认的实现类是 TitleMgr
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论