Androidデザインモデル---テンプレートデザインモデル

1187 ワード

一.核心思想.
一連のアルゴリズムフレームワークを定義し、フレームワークは指定の順序で実行され、具体的なアルゴリズムの実現は親クラスに置くことも、子クラスに置くこともできる.
二.単純な実装
public abstract class BaseActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //1.    
        setContentView(getLayout());
        //2.    
        initData();
        //3.   view
        initView();
        //4.    (  )
        refreshHttp();
    }

    public abstract int getLayout();
    public void initData(){}
    public abstract void initView();
    public void refreshHttp(){}

}


サブクラス
public class MainActivity extends BaseActivity{

    @Override
    public int getLayout() {
        return R.layout.activity_main;
    }

    @Override
    public void initData() {
        super.initData();
    }

    @Override
    public void initView() {

    }

    @Override
    public void refreshHttp() {
        super.refreshHttp();
    }
}

メリット:すべてのActivityがこの流れに従うと、可読性が高く、後でメンテナンスが便利になります.例えば、初期化Viewに問題が発生した場合は、initView()を直接探せばいいです.
文章が简単でどうやって来たのか、书きすぎて自分で振り返ってみるのも骨が折れる.核心思想を理解すればよい,書き方は自由に変えることができる