Android 安卓技术分享android重构项目Android知识

EasyAndroid库,简化Android开发的库,新增加了多

2017-06-21  本文已影响500人  ayvytr

EasyAndroid 库(请点个Star吧!)

更新啦:已更新到2.1.0,添加了SpManager和Sp

SpManager管理Sp,Sp封装了SharedPreference各种操作,精简了SharedPreferences操作(也有SpTest类进行了测试,保证通过测试才发布呦!)

更新啦!已更新到1.8.5!已经完全支持JCenter,后续不再支持JitPack方式编译。

  1. Colors类,包含上千种颜色
  2. FlowLayout 流式布局
  3. AuthEditText 类似支付宝的密码输入控件(最新版已弃用,请使用 NewAuthEditText)
  4. QuickIndexView 类似微信右侧字母快速导航条
  5. NewAuthEditText 类似支付宝的密码输入控件(修改了 AuthEditText 中不合理的重写方法,布局文件预览不正常,没有自定义属性等多个问题,扩展了自定义属性功能)
  6. Managers 类,系统Service类需要通过Context获取后还要强转类型,使用这个类,完全不用类型转换咯!
  7. 其他代码优化和Bug修改

使用

(有关Context类:   先在 'Application.onCreate()' 中调用 'Easy.getDefault().init(this);')
直接使用(包含类型转换,ViewTool,RegexTool,自定义控件,上千种颜色资源等多个功能)

编译

JCenter

compile 'com.ayvytr:EasyAndroid:2.1.0'

包含

SpManager Sp

SpManager管理Sp,Sp封装了SharedPreferences操作,可以直接使用Sp管理SharedPreference实例,不过依然推荐使用SpManager来
产生Sp实例(已在SpTest类中进行了测试,应该没bug了)

用法:

//获取默认的Sp实例
Sp defaultSp = SpManager.getDefault(context).getSp();
//获取指定名称的Sp实例
Sp yourSp = SpManager.getDefault(context).getSp("your_sp_name");

//使用 获取值
int i = yourSp.getInt("key");
i = yourSp.getInt("key", 10);
//设置值
yourSp.putInt("key", 111).putInt("key2", 222);
//获取所有值
Map<String, ?> all = yourSp.getAll();
//删除值
yourSp.remove("key");

//删除默认的sp文件
SpManager.getDefault(context).deleteSp();
//删除指定名称的sp文件
SpManager.getDefault(context).deleteSp("your_sp_name");

资源

从 -300~300 dp 和 sp 资源,无需创建,直接使用
有关TextView等View的Style

自定义View (有关TextView的类可能作用不大)

CenterGravityTextView
LeftCenterGravityTextView
RightCenterGravityTextView

SeekBarPressure: 双Thumb的SeekBar

Tool classes with out Context

Convert     类型转换类,仿照了C#的Convert类(对这个类情(zhen)有(de)独(hao)钟(yong))
            提供了大部分基本类型到bool,int,byte的转换,以及isZero方法
    toBool
    izZero
    toInt
    toByte

EncodeTool  编码解码相关操作类
    urlEncode
    urlDecode
    base64Encode
    base64Decode
    base64UrlSafeEncode
    htmlEncode
    htmlDecode

EncryptTool 加密解密相关操作类
    encryptMD2ToString
    encryptMD2
    encryptMD5ToString
    encryptMD5
    encryptSHA1ToString
    encryptSHA1
    encryptSHA224ToString
    encryptSHA224
    encryptSHA256ToString
    encryptSHA256
    encryptSHA384ToString
    encryptSHA384
    encryptSHA512ToString
    encryptSHA512
    hashTemplate
    encryptHmacMD5ToString
    encryptHmacMD5
    encryptHmacSHA1ToString
    encryptHmacSHA1
    encryptHmacSHA224ToString
    encryptHmacSHA224
    encryptHmacSHA256ToString
    encryptHmacSHA256
    encryptHmacSHA384ToString
    encryptHmacSHA384
    encryptHmacSHA512ToString
    encryptHmacSHA512
    hmacTemplate
    encryptDES2Base64
    encryptDES2HexString
    encryptDES
    decryptBase64DES
    decryptHexStringDES
    decryptDES
    encrypt3DES2Base64
    encrypt3DES2HexString
    encrypt3DES
    decryptBase64_3DES
    decryptHexString3DES
    decrypt3DES
    encryptAES2Base64
    encryptAES2HexString
    encryptAES
    decryptBase64AES
    decryptHexStringAES
    decryptAES
    desTemplate
    bytes2HexString
    hexString2Bytes
    hex2Dec
    base64Encode
    base64Decode

FileTool    文件操作类,判断是不是文件/目录,是不是存在,重命名,创建文件/目录,列出文件/目录,
            获取文件名/文件标题(不包含扩展名), 有没有扩展名,读/写文件等方法
    createDir
    createFile
    fromName
    getByteArray
    getExtension
    getExtension
    getLastModified
    getLowerName
    getName
    getNamesExtensionsList
    getNamesList
    getTitle
    hasExtension
    isDir
    isExists
    isFile
    isTyped
    listAll
    listAllDirs
    listAllDirsDislikeNames
    listAllDirsDislikeNamesNoCase
    listAllDirsLikeNames
    listAllDirsLikeNamesNoCase
    listAllDirsWithNames
    listAllDirsWithNamesNoCase
    listAllDirsWithoutNames
    listAllDirsWithoutNamesNoCase
    listAllDislikeNames
    listAllDislikeNamesNoCase
    listAllLikeNames
    listAllLikeNamesNoCase
    listAllWithExtension
    listAllWithNames
    listAllWithNamesNoCase
    listAllWithoutExtension
    listAllWithoutNames
    listAllWithoutNamesNoCase
    listDirs
    listDirsDislikeNames
    listDirsDislikeNamesNoCase
    listDirsLikeNames
    listDirsLikeNamesNoCase
    listDirsWithNames
    listDirsWithNamesNoCase
    listDirsWithoutNames
    listDirsWithoutNamesNoCase
    listFiles
    listFilesDislikeNames
    listFilesDislikeNamesNoCase
    listFilesLikeNames
    listFilesLikeNamesNoCase
    listFilesNames
    listFilesPaths
    listFilesWithExtension
    listFilesWithNames
    listFilesWithNamesNoCase
    listFilesWithoutExtension
    listFilesWithoutNames
    listFilesWithoutNamesNoCase
    of
    open
    read
    readFile
    rename
    toFileNames
    toFilePaths
    write
    writeFile

RegexTool   正则工具类,包括验证手机号,邮箱,身份证号码等
    isMobileSimple
    isMobileExact
    isTel
    isIDCard15
    isIDCard18
    isEmail
    isURL
    isZh
    isUsername
    isDate
    isIP
    isMatch
    getMatches
    getSplits
    getReplaceFirst
    getReplaceAll

TextTool    提供了众多的字符串操作功能,包括判空,是不是字符串,分割字符串(会去掉末尾的regex)等功能
    isEmpty
    isDigit
    isNumber
    reverse
    emptyString
    split
    isBlank

Tool classes with Context

Easy    这个库的单例入口类, 使用有关Context的类之前,需要初始化这个类
    getContext
    checkInitState
    getDefault
    init
    release
    getClipboardManager
    getWindowManager
    getKeyguardManager

BarTool StatusBar, ActionBar操作工具类       
    setColor
    setColorForSwipeBack
    setColorNoTranslucent
    setColorDiff
    setTranslucent
    setTranslucentForCoordinatorLayout
    setTransparent
    setTranslucentDiff
    setColorForDrawerLayout
    setColorNoTranslucentForDrawerLayout
    setColorForDrawerLayout
    setColorForDrawerLayoutDiff
    setTranslucentForDrawerLayout
    setTranslucentForDrawerLayoutDiff
    setTransparentForImageView
    setTranslucentForImageViewInFragment
    clearPreviousSetting
    addTranslucentView
    createStatusBarView
    setRootView
    setTransparentForWindow
    transparentStatusBar
    createTranslucentStatusBarView
    getStatusBarHeight
    calculateStatusColor
    setTransparentStatusBar
    hideStatusBar
    isStatusBarExists
    getActionBarHeight
    showNotificationBar
    hideNotificationBar
    invokePanels

ClipboardTool   剪贴板操作类
    setText
    getText
    getText
    setUri
    getUri
    setIntent
    getIntent

DensityTool Dp - Px 相互转化类,提供了int,float,double 3种类型的重载方法,尽可能减少外部强制类型转换.
    px2dp
    dp2px

IntentTool  获取常用的Intent
    getInstallAppIntent
    getUninstallAppIntent
    getLaunchAppIntent
    getAppDetailsSettingsIntent
    getShareTextIntent
    getShareImageIntent
    getComponentIntent
    getShutdownIntent
    getDialIntent
    getCallIntent
    getSendSmsIntent
    getCaptureIntent

ResTool     获取资源中Drawable,String,dimension,color, Configuration.
    getDrawable
    getString
    getDimen
    getDimenFloat
    getDimenToDp
    getDimenFloatToDp
    getColor
    getConfiguration

ScreenTool  提供了获取屏幕尺寸,宽高,屏幕旋转方向,设置为竖屏,是不是横屏/竖屏,获取屏幕截图(包含/不包含状态栏), 判断是不是锁屏的功能.
    getDisplayMetrics
    getScreenWidth
    getScreenHeight
    setLandscape
    setPortrait
    isLandscape
    isPortrait
    getScreenRotationAngle
    getRotationAngle
    captureWithStatusBar
    captureWithoutStatusBar
    isScreenLock

ToastTool   Toast工具类,提供简便的Toast创建和输出功能
    make
    makeLong
    show
    showLong

库的测试类

ConvertTest
FileToolTest
TextToolTest
DensityToolTest
    RegexToolTest
上一篇下一篇

猜你喜欢

热点阅读