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