123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- package com.edufound.reader.util;
- import android.app.Activity;
- import android.app.Application;
- import android.content.Context;
- import android.content.Intent;
- import android.text.TextUtils;
- import android.util.DisplayMetrics;
- import com.edufound.reader.activity.LoginAlertActivity;
- import com.edufound.reader.application.EApplication;
- import com.edufound.reader.bean.ChannelCode;
- import com.orhanobut.logger.Logger;
- import java.math.BigDecimal;
- import java.text.DecimalFormat;
- import io.reactivex.rxjava3.annotations.NonNull;
- public class EfunboxUtil {
- /**
- * 得到宽高缩放比
- */
- public static void initDesignSize(Context context) {
- final DisplayMetrics appDisplayMetrics = context.getResources().getDisplayMetrics();
- int designWidth = 1280;
- int designHeight = 720;
- float ds = 1.0f * designWidth / designHeight;
- float ts = 1.0f * appDisplayMetrics.widthPixels / appDisplayMetrics.heightPixels;
- if (ds >= ts) {
- int targetWidth = appDisplayMetrics.widthPixels;
- float designScale = 1.0f * targetWidth / designWidth;
- setDisplay(context, designScale);
- } else {
- int targetHeight = appDisplayMetrics.heightPixels;
- float designScale = 1.0f * targetHeight / designHeight;
- setDisplay(context, designScale);
- }
- }
- /**
- * 设置dpi缩放比
- */
- public static void setDisplay(Context context, float designScale) {
- DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
- displayMetrics.density = designScale;
- displayMetrics.scaledDensity = displayMetrics.density;
- displayMetrics.xdpi = displayMetrics.density * 160;
- displayMetrics.ydpi = displayMetrics.xdpi;
- displayMetrics.densityDpi = Float.valueOf(displayMetrics.xdpi).intValue();
- }
- /**
- * 判断字符串是否符合手机号码格式
- * 移动号段: 134,135,136,137,138,139,147,150,151,152,157,158,159,170,178,182,183,184,187,188
- * 联通号段: 130,131,132,145,155,156,170,171,175,176,185,186
- * 电信号段: 133,149,153,170,173,177,180,181,189
- *
- * @param mobileNums
- * @return 待检测的字符串
- */
- public static boolean isMobileNO(String mobileNums) {
- String telRegex = "^((13[0-9])|(14[5,7,9])|(15[^4])|(18[0-9])|(17[0,1,3,5,6,7,8]))\\d{8}$";// "[1]"代表第1位为数字1,"[358]"代表第二位可以为3、5、8中的一个,"\\d{9}"代表后面是可以是0~9的数字,有9位。
- if (TextUtils.isEmpty(mobileNums)) {
- return false;
- } else {
- return mobileNums.matches(telRegex);
- }
- }
- /**
- * 根据中文年纪选择换成后台枚举
- */
- public static String getEnumByCNGrade(String cnGrade) {
- // PRESCHOOL("学前"),
- // PRIMARY_FIRST_GRADE("小学一年级"),
- // PRIMARY_SECOND_GRADE("小学二年级"),
- // PRIMARY_THREE_GRADE("小学三年级"),
- // PRIMARY_SENIOR_GRADE("小学四年级");
- switch (cnGrade) {
- case "一年级":
- return "PRIMARY_FIRST_GRADE";
- case "二年级":
- return "PRIMARY_SECOND_GRADE";
- case "三年级":
- return "PRIMARY_THREE_GRADE";
- case "四年级":
- return "PRIMARY_SENIOR_GRADE";
- case "学前":
- return "PRESCHOOL";
- }
- return "undefinde";
- }
- public static String getCNGradeByEnum(String gradeEnum) {
- switch (gradeEnum) {
- case "PRIMARY_FIRST_GRADE":
- return "一年级";
- case "PRIMARY_SECOND_GRADE":
- return "二年级";
- case "PRIMARY_THREE_GRADE":
- return "三年级";
- case "PRIMARY_SENIOR_GRADE":
- return "四年级";
- case "PRESCHOOL":
- return "学前";
- }
- return "undefinde";
- }
- public static int getIndexGradeByEnum(String gradeEnum) {
- switch (gradeEnum) {
- case "PRIMARY_FIRST_GRADE":
- return 0;
- case "PRIMARY_SECOND_GRADE":
- return 1;
- case "PRIMARY_THREE_GRADE":
- return 2;
- case "PRIMARY_SENIOR_GRADE":
- return 3;
- case "PRESCHOOL":
- return 4;
- }
- return -1;
- }
- public static boolean checkLogin(Context context) {
- if (!Consts.getUID().equals("test")) {
- //已登录
- return true;
- }
- //未登录,去登录
- if (Consts.getUmengChannel().equals(ChannelCode.BAIDU.getChannelCode())) {
- //百度渠道调用百度的授权
- } else if (Consts.getUmengChannel().equals(ChannelCode.YIFANG.getChannelCode())) {
- //义方调用普通版登录
- Intent tologin = new Intent(context, LoginAlertActivity.class);
- context.startActivity(tologin);
- }
- return false;
- }
- public static String checkNum10000(String num) {
- if (Float.valueOf(num) > 10000f) {
- float a = Float.parseFloat(num) / 10000;
- DecimalFormat decimalFormat = new DecimalFormat("#.#");
- return String.valueOf(decimalFormat.format(a)) + "万";
- }
- return num;
- }
- }
|