Android设计模式——Builder模式

2019-10-04  本文已影响0人  李die喋

builder模式即建造者模式,他的作用是将一个复杂对象的构建和他的表示分离。

实现要点

下面写一个简单的例子 我们平常都会自己写toolbar 这里把toolbar的属性封装起来。

public class ToolbarConfig{
    //标题栏的所有属性在这个类中
    public SettingConfig settingConfig = new SettingConfig();
    
    private ToolbarConfing(){}
    
    public static class Builder{
        SettingConfig settingConfig = new SettingConfig();
        
        public Builder setLeftImage(int leftImageId){
            settingConfig.leftImageId = leftImageId;
            return this;
        }
        
        public Builder setRightImage(int rightImageId){
             settingConfig.rightImageId = rightImageId;
             return this;
        }
        
        public Builder setCenterText(String centerText){
            settingConfig.centerText = centerText;
            return this;
        }
        
        void applyConfig(ToolbarConfig config){
            config.settingConfig = this.settingConfig;
        }
        
        public ToolbarConfig create(){
            ToolbarConfig config = new ToolbarConfig();
            applyConfig(config);
            return config;
        }
    }
}

调用:

ToolbarConfig config = new ToolbarConfig.Builder()
.setLeftImage(R.id.left)
.setRightImage(R.id.right)
.setCenterText("注册")
.create();

Builder模式比较常用的实现形式是通过链式调用实现,这样更简洁美观。

上一篇 下一篇

猜你喜欢

热点阅读