Android 注解框架:AndroidInject

jopen 10年前發布 | 55K 次閱讀 Android開發 移動開發 AndroidInject

AndroidInject 是 Android 注解框架,以簡化 Android 開發

目前完成的注解(持續增加中):

@AINoTitle: 類注解, 只適用于Activity(需繼承于AIActivity), 設置Activity不顯示Title

    @AIFullScreen: 類注解, 只適用于Activity(需繼承于AIActivity), 設置Activity全屏

    @AILayout: 類注解
        value[int]: 用于設置該Activity的布局 ---- setContentView(resId);


    @AIView: 屬性注解
        id[int]: 用于綁定控件 ---- findViewById(resId);(default identifier[R.id.{field name}] if did not set id)
        clickMethod[String]: 用于設置控件點擊事件的回調方法, 可選, 方法名稱任意, 參數必須為(View view)
        longClickMethod[String]: 用于設置控件長按的回調方法, 可選, 方法名任意, 參數必須為(View view)
        itemClickMethod[String]: 用于設置控件item點擊的回調方法, 可選, 方法名任意, 參數必須為(AdapterView, View, int, long)
        itemLongClickMethod[String]: 用于設置控件item長按的回調方法, 可選, 方法名任意, 參數必須為(AdapterView, View, int, long)

    @AIBean: 屬性注解, 為該屬性生成一個對象并注入, 該對象必須有個默認的不帶參數的構造方法

    @AISystemService: 屬性注解,為該屬性注入系統服務對象


    @AIClick: 方法注解
        value[int[], 所要綁定控件的id]: 用于綁定控件點擊事件的回調方法, 方法名稱任意, 參數必須為(View view)

    @AIItemClick: 方法注解
        value[int[], 所要綁定控件的id]: 用于綁定控件item點擊事件的回調方法, 方法名稱任意, 參數必須為(AdapterView, View, int, long)

    @AILongClick: 方法注解
        value[int[], 所要綁定控件的id]: 用于綁定控件長按事件的回調方法, 方法名稱任意, 參數必須為(View view)

    @AIItemLongClick: 方法注解
        value[int[], 所要綁定控件的id]: 用于綁定控件item長按事件的回調方法, 方法名稱任意, 參數必須為(AdapterView, View, int, long)

    @AIScreenSize: 屬性注解
        用于注入當前設備的屏幕大小(寬高)

    @AIGet: 方法注解
        value[String, 所要請求的url]:表示以GET來請求url
        connTimeout[int, 連接超時時間]:連接一個url的連接等待時間
        soTimeout[int, response返回超時時間]:連接上一個url,獲取response的返回等待時間

    @AIPost: 方法注解
        value[String, 所要請求的url]:表示以Post來請求url
        connTimeout[int, 連接超時時間]:連接一個url的連接等待時間
        soTimeout[int, response返回超時時間]:連接上一個url,獲取response的返回等待時間

    @AIParam: 方法參數注解
        value[String, 請求的參數別名]:注入@AIGet或@AIPost注解方法的請求參數

    @AINetWorker: 屬性注解
        注入網絡請求服務

    @AIUpload: 方法注解
        value[String, 所要請求的url]:表示要上傳的url,默認用post請求(不需要使用@AIPost注解)
        connTimeout[int, 連接超時時間]:連接一個url的連接等待時間
        soTimeout[int, response返回超時時間]:連接上一個url,獲取response的返回等待時間
        注意:使用此注解的方法參數需要包含Collection或其子類型集合 或者包含File對象 來作為要上傳的文件

注意:

使用fragment的注解,需要android-support-v4.jar的支持(以兼容低版本)

使用網絡請求的注解,需要gson.jar的支持

使用文件上傳的注解,需要httpmime.jar的支持

項目主頁:http://www.baiduhome.net/lib/view/home/1392515086663

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!