ThinkAndroid註解機制二

/**************************************************************************************************

 

 *  本博客為CSDN博主【MK】原創,博客地址:https://blog.csdn.net/mkrcpp/article/details/14166121

 

 **********************************************************************************************************************/

 

打開ThinkAndroid框架最顯眼的莫過於根目錄下的TAActivity和TAApplication。

 

看著陣勢就是讓我們以後寫的Activity都繼承於TAActivity,待研究一番後,確實如此。

 

TAActivity

 

最重要的就是其onCreate方法

 

@Override  

protected void onCreate(Bundle savedInstanceState)  

{  

    notifiyApplicationActivityCreating();  

    onPreOnCreate(savedInstanceState);  

    super.onCreate(savedInstanceState);  

    getTAApplication().getAppManager().addActivity(this);  

    initActivity();  

    onAfterOnCreate(savedInstanceState);  

    notifiyApplicationActivityCreated();  

}  

TAActivity提供瞭 onPreOnCreate方法,onAfterOnCreate方法,以後繼承的Activity隻需重寫這兩個就能完成大部分任務。

在onPreOnCreate和onAfterOnCreate之間,調用瞭自己的 super.onCreate,但是還沒有綁定佈局,再下面有個initActivity方法,在這個方法裡,自動完成瞭初始化註解元素,設置顯示的佈局等一系列動作。

private void initActivity()  

{  

    // 初始化模塊名  

    getModuleName();  

    // 初始化佈局名  

    getLayouName();  

    // 加載類註入器  

    initInjector();  

    // 自動加載默認佈局  

    loadDefautLayout();  

}  

代碼註釋的很清楚,首先通過命名規范自動獲取佈局的名字,然後initInjector初始化註解的屬性,最後loadDefaultLayout來設置顯示的佈局,一切都自動化瞭,不需要自己寫setContentView……

通過研究TAActivity,以後如果想用Fragment,那麼完全可以自己寫個TAFragment瞭,大同小異。

 

/**************************************************************************************************

 

 *  本博客為CSDN博主【MK】原創,博客地址:https://blog.csdn.net/mkrcpp/article/details/14166121

 

 ****************************************************************

發佈留言