Android快速开发工具集合——YUtils

Android快速开发工具集合——YUtils

How to use

Step 1 project:build.gradle

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

Step 2 app:build.gradle

dependencies {
        compile 'com.github.yechaoa:YUtils:2.0.8'
}

2.0.8的版本去掉了gson依赖,避免与其他第三方gson编译冲突,2.0.7的版本gson可用

一、初始化(init)

in your Application

//初始化
YUtils.initialize(this);
//设置打印开关
LogUtil.setIsLog(true);
//注册Activity生命周期
registerActivityLifecycleCallbacks(ActivityUtil.getActivityLifecycleCallbacks());

二、使用(use)

1.YUtils(各种小工具)

  • void initialize(Application app)
    Application 中初始化

  • Application getApplication()
    获取全局上下文

  • int getScreenWidth()
    获取屏幕宽度

  • int getScreenHeight()
    获取屏幕高度

  • void showLoading(String msg)
    Loading加载框

  • void showLoading(Activity activity,String msg)
    比第一种多个参数,在不确定是否还有其他dialog的情况下,使用第二种

  • void dismissLoading()
    dismissLoading

  • void finishBySleep(final long millis)
    根据时间休眠然后关闭当前页面,比如:3秒自动返回

  • String getVersionName()
    获取版本名

  • int getVersionCode()
    获取版本号

  • boolean checkPhoneNumber(String mobiles)
    校验手机号

  • String MD5(String data)
    MD5加密

  • int dp2px(float dp)
    dp2px

  • float px2dp(int px)
    px2dp

  • void copyToClipboard(String text)
    复制文本到粘贴板

  • View Foreground(View view, int color, int start, int end)
    字体高亮(TextView、EditText、Button)like this —》 YUtils.Foreground(mEditText, Color.RED,1,2);

  • boolean isNetWorkAvailable()
    判断网络状态

  • void closeSoftKeyboard()
    关闭软键盘

2.ToastUtil(任意线程,不重复显示,可取消)

  • showToast(final String msg)
    底部显示(默认),任何线程且不会超长显示

  • void showCenterToast(final String msg)
    showCenterToast 居中显示

  • void cancelToast()
    取消Toast,onDestroy时调用,或onPause,当前页面finish之后在下一个页面不会再显示

3.LogUtil(日志打印,带方法行数链接,可超长打印)

  • void setIsLog(boolean isLog)
    是否打印

  • setIsLog(boolean isLog, String tag)
    带全局tag

  • void i(String msg)
    不带tag

  • void i(String TAG, String msg)
    带tag

  • void d(String msg)

  • void d(String TAG, String msg)

  • void e(String msg)

  • void e(String TAG, String msg)

4.ActivityUtil(Activity管理)

  • Activity getCurrentActivity()
    获得当前栈顶Activity

  • String getCurrentActivityName()
    获得当前Activity名字

  • void finishActivity(Activity activity)
    关闭当前Activity

  • void closeAllActivity()
    关闭所有Activity

5.SpUtil(SharedPreferences)

  • void setString(String key, String value)
    String

  • String getString(String key)

  • void setInt(String key, String value)
    Int

  • String getInt(String key)

  • void setBoolean(String key, String value)
    Boolean

  • String getBoolean(String key)

  • void setFloat(String key, String value)
    Float

  • String getFloat(String key)

  • void setLong(String key, String value)
    Long

  • String getLong(String key)

  • void removeByKey(String key)
    根据key移除

  • void removeAll()
    移除所有

6.ShareUtil(调用系统分享)

  • void shareImage(String title, Uri uri)
    分享图片

  • void shareText(String title, String text)
    分享文字

7.TimeUtil

  • String getDate()
    获取当前年月日

  • String getTime()
    获取当前时分秒

  • String getDateAndTime()
    获取当前年月日时分秒

  • Long getTimeForLong()
    获取当前时间,返回Long类型

  • String formatDate(String mDate)
    转换为年月日

8.ParseUtil(直接解析 Json)

like this

{
     "code": "0",
     "data": "修改成功",
     "flag": true,
     "info": null,
     "infoValues": null
 }
  • String parseCode(String response)
    解析Code

  • boolean parseFlag(String response)
    解析Flag

  • String parseData(String response, String key)
    解析data

  • String parseInfo(String response, String key)
    解析info

9.GsonUtil

  • String GsonString(Object object)
    转成json

  • T GsonToBean(String gsonString, Class cls)
    转成bean

  • List GsonToList(String gsonString, Class cls)
    转成list

  • GsonToMaps(String gsonString)

10.ExitUtils

like this

 private ExitUtils exit = new ExitUtils();

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            pressAgainExit();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }

    /**
     * 双击返回键退出
     */
    private void pressAgainExit() {
        if (exit.isExit()) {
            ActivityUtil.closeAllActivity();
        } else {
            YUtils.showToast("再按一次退出");
            exit.doExitAction();
        }
    }



GitHub:https://github.com/yechaoa/YUtils

猜你喜欢

转载自blog.csdn.net/yechaoa/article/details/68953307