diff --git a/app/build.gradle b/app/build.gradle index cf87aa6e..a232d07f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -181,4 +181,11 @@ dependencies { //腾讯bugly //sdk地址 https://bugly.qq.com/docs/user-guide/instruction-manual-android/?v=1.0.0 implementation 'com.tencent.bugly:crashreport:latest.release' //其中latest.release指代最新Bugly SDK版本号,也可以指定明确的版本号,例如4.0.3 + + api 'org.greenrobot:eventbus:3.1.1' + + api 'com.github.bumptech.glide:glide:4.16.0' + annotationProcessor 'com.github.bumptech.glide:compiler:4.16.0' + api "com.github.bumptech.glide:okhttp3-integration:4.16.0" + api 'pl.droidsonroids.gif:android-gif-drawable:1.2.19' } diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/GlideUtil.java b/app/src/main/java/com/bonait/bnframework/common/glide/GlideUtil.java new file mode 100644 index 00000000..88702fd9 --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/GlideUtil.java @@ -0,0 +1,115 @@ +package com.bonait.bnframework.common.glide; + +import android.content.Context; +import android.graphics.drawable.Drawable; +import android.view.View; +import android.widget.ImageView; + +import androidx.annotation.Nullable; + +import com.bonait.bnframework.common.glide.transform.FitXYRoundRadiusTransform; +import com.bumptech.glide.load.DataSource; +import com.bumptech.glide.load.engine.GlideException; +import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions; +import com.bumptech.glide.request.RequestListener; +import com.bumptech.glide.request.RequestOptions; +import com.bumptech.glide.request.target.Target; + +/** + * @author: liup + * @description: + * @date: 2024/5/8 16:45. + */ +public class GlideUtil { + + private static final int CROSS_FADE_DURATION = 100; + + private GlideUtil() { + throw new AssertionError(); + } + +// public static String exchangeUrl(String path){ +// String result=path; +// if(!TextUtils.isEmpty(PATH_PRE)&&!TextUtils.isEmpty(path)) { +// if(!path.contains("http:")&&!path.contains("https:")){ +// if(path.contains(".png")||path.contains(".jpg")||path.contains(".jpeg")||path.contains(".gif")){ +// if(TEST) { +// result = PATH_PRE + path.replace("images", "modules"); +// }else{ +// result = PATH_PRE + path; +// } +// if(first){ +// LogUtils.d("GlideUtil exchangeUrl result:"+result); +// first=false; +// } +// } +// } +// } +//// LogUtils.i("GlideUtil exchangeUrl"+result); +// return result; +// } + + public static void showImage(Context context, String path, ImageView imageView,int placeId) { + if (context == null||path==null) { + return; + } + GlideApp.with(context) + .load(path) + .addListener(new RequestListener() { + @Override + public boolean onLoadFailed(@Nullable GlideException e, Object model, + Target target, boolean isFirstResource) { + return false; + } + + @Override + public boolean onResourceReady(Drawable resource, Object model, + Target target, DataSource dataSource, + boolean isFirstResource) { + if (imageView == null) { + return false; + } + imageView.setBackground(null); + return false; + } + }) + .placeholder(placeId) + .transition(DrawableTransitionOptions.withCrossFade(CROSS_FADE_DURATION)) + .into(imageView); + } + + public static void showImageWithRadius(Context context, String path, ImageView imageView,int placeId,int radius) { + if (context == null||path==null) { + return; + } + setType(imageView); + GlideApp.with(context) + .load(path) + .addListener(new RequestListener() { + @Override + public boolean onLoadFailed(@Nullable GlideException e, Object model, + Target target, boolean isFirstResource) { + return false; + } + + @Override + public boolean onResourceReady(Drawable resource, Object model, + Target target, DataSource dataSource, + boolean isFirstResource) { + if (imageView == null) { + return false; + } + imageView.setBackground(null); + return false; + } + }) + .transition(DrawableTransitionOptions.withCrossFade(CROSS_FADE_DURATION)) +// .apply(RequestOptions.bitmapTransform(new RoundedCorners(RADIUS))) + .apply(new RequestOptions().transform(new FitXYRoundRadiusTransform(radius))) + .into(imageView); + } + + private static void setType(ImageView imageView){//硬件加速 + imageView.setLayerType(View.LAYER_TYPE_HARDWARE,null); + } +} diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/MyAppGlideModule.java b/app/src/main/java/com/bonait/bnframework/common/glide/MyAppGlideModule.java new file mode 100644 index 00000000..6edb048e --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/MyAppGlideModule.java @@ -0,0 +1,50 @@ +package com.bonait.bnframework.common.glide; + +import android.content.Context; +import android.util.Log; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.GlideBuilder; +import com.bumptech.glide.annotation.GlideModule; +import com.bumptech.glide.load.engine.bitmap_recycle.LruBitmapPool; +import com.bumptech.glide.load.engine.cache.InternalCacheDiskCacheFactory; +import com.bumptech.glide.load.engine.cache.LruResourceCache; +import com.bumptech.glide.load.engine.cache.MemorySizeCalculator; +import com.bumptech.glide.module.AppGlideModule; + +/** + * Glide模块 + * + * @author song.zheng@androidmov.com + */ +@GlideModule +public final class MyAppGlideModule extends AppGlideModule { + + @Override + public boolean isManifestParsingEnabled() { + return false; + } + + @Override + public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) { + builder.setLogLevel(Log.WARN); + int cacheSize100MegaBytes = 104857600; + //应用私有目录 + builder.setDiskCache( + new InternalCacheDiskCacheFactory(context, cacheSize100MegaBytes) + ); + + MemorySizeCalculator calculator = new MemorySizeCalculator.Builder(context) + .setMemoryCacheScreens(2) + .build(); + int defaultMemoryCacheSize = calculator.getMemoryCacheSize(); + int defaultBitmapPoolSize = calculator.getBitmapPoolSize(); + + int customMemoryCacheSize = (int) (1.2 * defaultMemoryCacheSize); + int customBitmapPoolSize = (int) (1.2 * defaultBitmapPoolSize); + + builder.setMemoryCache( new LruResourceCache( customMemoryCacheSize )); + builder.setBitmapPool(new LruBitmapPool( customBitmapPoolSize )); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/transform/FitXYRoundRadiusTransform.java b/app/src/main/java/com/bonait/bnframework/common/glide/transform/FitXYRoundRadiusTransform.java new file mode 100644 index 00000000..7defac5f --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/transform/FitXYRoundRadiusTransform.java @@ -0,0 +1,95 @@ +package com.bonait.bnframework.common.glide.transform; + +import android.graphics.Bitmap; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; +import com.bumptech.glide.load.resource.bitmap.BitmapTransformation; +import com.bumptech.glide.util.Util; + +import java.nio.ByteBuffer; +import java.security.MessageDigest; + +/** + * @author: wx + * @date: 2023/1/29 + */ +public class FitXYRoundRadiusTransform extends BitmapTransformation { + + // 此处用实际类的完整路径 + private static final String ID = "com.amt.module_common.util.image.FitXYRoundRadiusTransform"; + private static final byte[] ID_BYTES = ID.getBytes(CHARSET); + + private final int roundingRadius; + + private boolean isLeftTop = true; + private boolean isRightTop = true; + private boolean isLeftBottom = true; + private boolean isRightBottom = true; + + + public FitXYRoundRadiusTransform(int roundingRadius) { + this.roundingRadius = roundingRadius; + } + + public FitXYRoundRadiusTransform(int roundingRadius, boolean leftTop, boolean rightTop, boolean leftBottom, boolean rightBottom) { + this.roundingRadius = roundingRadius; + setNeedCorner(leftTop, rightTop, leftBottom, rightBottom); + } + + /** + * 需要设置圆角的部分 + * + * @param leftTop 左上角 + * @param rightTop 右上角 + * @param leftBottom 左下角 + * @param rightBottom 右下角 + */ + public void setNeedCorner(boolean leftTop, boolean rightTop, boolean leftBottom, boolean rightBottom) { + isLeftTop = leftTop; + isRightTop = rightTop; + isLeftBottom = leftBottom; + isRightBottom = rightBottom; + } + + @Override + protected Bitmap transform(@NonNull BitmapPool pool, @NonNull Bitmap toTransform, int outWidth, int outHeight) { + + Bitmap bitmap = TransformationFitXYUtils.fitXY(pool, toTransform, outWidth, outHeight); + + return TransformationFitXYUtils.roundCrop(pool, bitmap, + isLeftTop ? roundingRadius : 0, + isRightTop ? roundingRadius : 0, + isRightBottom ? roundingRadius : 0, + isLeftBottom ? roundingRadius : 0); + } + + + @Override + public boolean equals(Object o) { + if (o instanceof FitXYRoundRadiusTransform) { + FitXYRoundRadiusTransform other = (FitXYRoundRadiusTransform) o; + return roundingRadius == other.roundingRadius; + } + return false; + } + + @Override + public int hashCode() { + return Util.hashCode(ID.hashCode(), Util.hashCode(roundingRadius)); + } + + @Override + public void updateDiskCacheKey(@NonNull MessageDigest messageDigest) { + messageDigest.update(ID_BYTES); + + byte[] radiusData = ByteBuffer.allocate(4).putInt(roundingRadius).array(); + messageDigest.update(radiusData); + } + + + + + +} diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/transform/GlideBorderTransform.java b/app/src/main/java/com/bonait/bnframework/common/glide/transform/GlideBorderTransform.java new file mode 100644 index 00000000..9b521c62 --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/transform/GlideBorderTransform.java @@ -0,0 +1,67 @@ +package com.bonait.bnframework.common.glide.transform; + +import android.graphics.Bitmap; +import android.graphics.BitmapShader; +import android.graphics.Canvas; +import android.graphics.Paint; +import android.graphics.RectF; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; +import com.bumptech.glide.load.resource.bitmap.BitmapTransformation; +import com.bumptech.glide.load.resource.bitmap.TransformationUtils; + +import java.security.MessageDigest; + +/** + * Glide边框转换 + * + * @author song.zheng@androidmov.com + */ +public class GlideBorderTransform extends BitmapTransformation { + private final float borderWidth; + private final int borderColor; + + public GlideBorderTransform(float borderWidth, int borderColor) { + super(); + this.borderWidth = borderWidth; + this.borderColor = borderColor; + } + + @Override + protected Bitmap transform(@NonNull BitmapPool pool, @NonNull Bitmap toTransform, int outWidth, + int outHeight) { + Bitmap bitmap = TransformationUtils.centerCrop(pool, toTransform, outWidth, outHeight); + return border(pool, bitmap); + } + + private Bitmap border(BitmapPool pool, Bitmap source) { + if (source == null) { + return null; + } + Bitmap result = pool.get(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888); + Canvas canvas = new Canvas(result); + Paint paint = new Paint(); + paint.setShader(new BitmapShader(source, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP)); + paint.setAntiAlias(true); + RectF rectF = new RectF(0f, 0f, source.getWidth(), source.getHeight()); + canvas.drawRect(rectF, paint); + paint.reset(); + paint.setStyle(Paint.Style.STROKE); + paint.setStrokeWidth(borderWidth); + paint.setColor(borderColor); + paint.setAntiAlias(true); + canvas.drawRect(rectF, paint); + return result; + } + + public String getId() { + return getClass().getName() + Math.round(borderWidth); + } + + @Override + public void updateDiskCacheKey(@NonNull MessageDigest messageDigest) { + + } +} diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/transform/GlideRoundTransform.java b/app/src/main/java/com/bonait/bnframework/common/glide/transform/GlideRoundTransform.java new file mode 100644 index 00000000..715ab8c1 --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/transform/GlideRoundTransform.java @@ -0,0 +1,64 @@ +package com.bonait.bnframework.common.glide.transform; + +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapShader; +import android.graphics.Canvas; +import android.graphics.Paint; +import android.graphics.RectF; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; +import com.bumptech.glide.load.resource.bitmap.BitmapTransformation; +import com.bumptech.glide.load.resource.bitmap.TransformationUtils; + +import java.security.MessageDigest; + +/** + * Glide圆角转换 + * + * @author song.zheng@androidmov.com + */ +public class GlideRoundTransform extends BitmapTransformation { + private static float radius = 0f; + + public GlideRoundTransform(Context context) { + this(context, 8); + } + + public GlideRoundTransform(Context context, int px) { + super(); + radius = px; + } + + @Override + protected Bitmap transform(@NonNull BitmapPool pool, @NonNull Bitmap toTransform, int outWidth, + int outHeight) { + Bitmap bitmap = TransformationUtils.centerCrop(pool, toTransform, outWidth, outHeight); + return roundCrop(pool, bitmap); + } + + private static Bitmap roundCrop(BitmapPool pool, Bitmap source) { + if (source == null) { + return null; + } + Bitmap result = pool.get(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888); + Canvas canvas = new Canvas(result); + Paint paint = new Paint(); + paint.setShader(new BitmapShader(source, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP)); + paint.setAntiAlias(true); + RectF rectF = new RectF(0f, 0f, source.getWidth(), source.getHeight()); + canvas.drawRoundRect(rectF, radius, radius, paint); + return result; + } + + public String getId() { + return getClass().getName() + Math.round(radius); + } + + @Override + public void updateDiskCacheKey(@NonNull MessageDigest messageDigest) { + + } +} diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/transform/RoundRadiusTransform.java b/app/src/main/java/com/bonait/bnframework/common/glide/transform/RoundRadiusTransform.java new file mode 100644 index 00000000..60141bb9 --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/transform/RoundRadiusTransform.java @@ -0,0 +1,85 @@ +package com.bonait.bnframework.common.glide.transform; + +import android.graphics.Bitmap; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; +import com.bumptech.glide.load.resource.bitmap.BitmapTransformation; +import com.bumptech.glide.load.resource.bitmap.TransformationUtils; +import com.bumptech.glide.util.Util; + +import java.nio.ByteBuffer; +import java.security.MessageDigest; + +/** + * @author: wx + * @date: 2023/1/29 + */ +public class RoundRadiusTransform extends BitmapTransformation { + + // 此处用实际类的完整路径 + private static final String ID = "com.amt.module_common.util.image.RoundRadiusTransform"; + private static final byte[] ID_BYTES = ID.getBytes(CHARSET); + + private final int roundingRadius; + + private boolean isLeftTop, isRightTop, isLeftBottom, isRightBottom; + + private static RoundRadiusTransform mInstance; + + public RoundRadiusTransform(int roundingRadius) { + this.roundingRadius = roundingRadius; + } + public RoundRadiusTransform(int roundingRadius,boolean leftTop, boolean rightTop, boolean leftBottom, boolean rightBottom) { + this.roundingRadius = roundingRadius; + setNeedCorner(leftTop, rightTop, leftBottom, rightBottom); + } + + /** + * 需要设置圆角的部分 + * + * @param leftTop 左上角 + * @param rightTop 右上角 + * @param leftBottom 左下角 + * @param rightBottom 右下角 + */ + public void setNeedCorner(boolean leftTop, boolean rightTop, boolean leftBottom, boolean rightBottom) { + isLeftTop = leftTop; + isRightTop = rightTop; + isLeftBottom = leftBottom; + isRightBottom = rightBottom; + } + + @Override + protected Bitmap transform(@NonNull BitmapPool pool, @NonNull Bitmap toTransform, int outWidth, int outHeight) { + return TransformationUtils.roundedCorners(pool, toTransform, + isLeftTop ? roundingRadius : 0, + isRightTop ? roundingRadius : 0, + isRightBottom ? roundingRadius : 0, + isLeftBottom ? roundingRadius : 0); + } + + + @Override + public boolean equals(Object o) { + if (o instanceof RoundRadiusTransform) { + RoundRadiusTransform other = (RoundRadiusTransform) o; + return roundingRadius == other.roundingRadius; + } + return false; + } + + @Override + public int hashCode() { + return Util.hashCode(ID.hashCode(), Util.hashCode(roundingRadius)); + } + + @Override + public void updateDiskCacheKey(@NonNull MessageDigest messageDigest) { + messageDigest.update(ID_BYTES); + + byte[] radiusData = ByteBuffer.allocate(4).putInt(roundingRadius).array(); + messageDigest.update(radiusData); + } +} diff --git a/app/src/main/java/com/bonait/bnframework/common/glide/transform/TransformationFitXYUtils.java b/app/src/main/java/com/bonait/bnframework/common/glide/transform/TransformationFitXYUtils.java new file mode 100644 index 00000000..e9442506 --- /dev/null +++ b/app/src/main/java/com/bonait/bnframework/common/glide/transform/TransformationFitXYUtils.java @@ -0,0 +1,155 @@ +package com.bonait.bnframework.common.glide.transform; + +import android.graphics.Bitmap; +import android.graphics.BitmapShader; +import android.graphics.Canvas; +import android.graphics.Matrix; +import android.graphics.Paint; +import android.graphics.Path; +import android.graphics.RectF; + +import androidx.annotation.NonNull; + +import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; +import com.bumptech.glide.load.resource.bitmap.TransformationUtils; +import com.bumptech.glide.util.Synthetic; + +import java.util.concurrent.TimeUnit; +import java.util.concurrent.locks.Condition; +import java.util.concurrent.locks.Lock; + +/** + * @author Nov + * @date 23.7.11 + */ +public class TransformationFitXYUtils { + private static final Lock BITMAP_DRAWABLE_LOCK = + new NoLock(); + + @NonNull + private static Bitmap.Config getNonNullConfig(@NonNull Bitmap bitmap) { + return bitmap.getConfig() != null ? bitmap.getConfig() : Bitmap.Config.ARGB_8888; + } + + private static void applyMatrix( + @NonNull Bitmap inBitmap, @NonNull Bitmap targetBitmap, Matrix matrix) { + BITMAP_DRAWABLE_LOCK.lock(); + try { + Canvas canvas = new Canvas(targetBitmap); + canvas.drawBitmap(inBitmap, matrix, DEFAULT_PAINT); + clear(canvas); + } finally { + BITMAP_DRAWABLE_LOCK.unlock(); + } + } + + public static final int PAINT_FLAGS = Paint.DITHER_FLAG | Paint.FILTER_BITMAP_FLAG; + private static final Paint DEFAULT_PAINT = new Paint(PAINT_FLAGS); + + private static final class NoLock implements Lock { + + @Synthetic + NoLock() { + } + + @Override + public void lock() { + // do nothing + } + + @Override + public void lockInterruptibly() throws InterruptedException { + // do nothing + } + + @Override + public boolean tryLock() { + return true; + } + + @Override + public boolean tryLock(long time, @NonNull TimeUnit unit) throws InterruptedException { + return true; + } + + @Override + public void unlock() { + // do nothing + } + + @NonNull + @Override + public Condition newCondition() { + throw new UnsupportedOperationException("Should not be called"); + } + } + + private static void clear(Canvas canvas) { + canvas.setBitmap(null); + } + + + public static Bitmap fitXY( + @NonNull BitmapPool pool, @NonNull Bitmap inBitmap, int width, int height) { + + if (inBitmap.getWidth() == width && inBitmap.getHeight() == height) { + return inBitmap; + } + final float widthPercentage = width / (float) inBitmap.getWidth(); + final float heightPercentage = height / (float) inBitmap.getHeight(); + int targetWidth = (int) (widthPercentage * inBitmap.getWidth()); + int targetHeight = (int) (heightPercentage * inBitmap.getHeight()); + + Bitmap.Config config = getNonNullConfig(inBitmap); + Bitmap toReuse = pool.get(targetWidth, targetHeight, config); + TransformationUtils.setAlpha(inBitmap, toReuse); + Matrix matrix = new Matrix(); + matrix.setScale(widthPercentage, heightPercentage); + applyMatrix(inBitmap, toReuse, matrix); + return toReuse; + } + + public static Bitmap roundCrop(BitmapPool pool, + Bitmap source, + float topLeft, + float topRight, + float bottomRight, + float bottomLeft) { + if (source == null) return null; + + Bitmap result = pool.get(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888); + if (result == null) { + result = Bitmap.createBitmap(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888); + } + BitmapShader shader = + new BitmapShader(source, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP); + + Paint paint = new Paint(); + paint.setShader(shader); + paint.setAntiAlias(true); + RectF rect = new RectF(0f, 0f, source.getWidth(), source.getHeight()); + BITMAP_DRAWABLE_LOCK.lock(); + try { + Canvas canvas = new Canvas(result); + Path path = new Path(); + path.addRoundRect( + rect, + new float[]{ + topLeft, + topLeft, + topRight, + topRight, + bottomRight, + bottomRight, + bottomLeft, + bottomLeft + }, + Path.Direction.CW); + canvas.drawPath(path, paint); + clear(canvas); + } finally { + BITMAP_DRAWABLE_LOCK.unlock(); + } + return result; + } +} diff --git a/app/src/main/java/com/bonait/bnframework/common/view/AddGoodDialog.java b/app/src/main/java/com/bonait/bnframework/common/view/AddGoodDialog.java index cc3414e6..aea02fc1 100644 --- a/app/src/main/java/com/bonait/bnframework/common/view/AddGoodDialog.java +++ b/app/src/main/java/com/bonait/bnframework/common/view/AddGoodDialog.java @@ -29,6 +29,7 @@ import com.bonait.bnframework.common.db.mode.BPA_GOODS; import com.bonait.bnframework.common.db.mode.BPA_GOODSTYPE; import com.bonait.bnframework.common.db.mode.BPA_MATERIAL; import com.bonait.bnframework.common.db.res.ResMaterilas; +import com.bonait.bnframework.common.glide.GlideUtil; import com.bonait.bnframework.common.image.MyBitmapUtils; import com.bonait.bnframework.common.message.MessageLooper; import com.bonait.bnframework.common.message.MessageManager; @@ -198,7 +199,8 @@ public class AddGoodDialog extends Dialog { public void onMessage(Object msg) { if (msg != null) { url=(String) msg; - new MyBitmapUtils().disPlay(cpfm,url); + GlideUtil.showImage(cpfm.getContext(),url,cpfm,R.mipmap.loading3); +// new MyBitmapUtils().disPlay(cpfm,url); } } }); @@ -286,7 +288,8 @@ public class AddGoodDialog extends Dialog { { edittext.setText(Data.name); edittext1.setText(Data.foreignKeyRe); - new MyBitmapUtils().disPlay(cpfm,Data.url); +// new MyBitmapUtils().disPlay(cpfm,Data.url); + GlideUtil.showImage(cpfm.getContext(),url,cpfm,R.mipmap.loading3); int index=0; for (Map.Entry entry : map_fl.entrySet()) { String key = entry.getKey(); diff --git a/app/src/main/java/com/bonait/bnframework/modules/home/adapter/image_sp_adapter.java b/app/src/main/java/com/bonait/bnframework/modules/home/adapter/image_sp_adapter.java index b33303af..cd672cec 100644 --- a/app/src/main/java/com/bonait/bnframework/modules/home/adapter/image_sp_adapter.java +++ b/app/src/main/java/com/bonait/bnframework/modules/home/adapter/image_sp_adapter.java @@ -15,6 +15,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.bonait.bnframework.R; import com.bonait.bnframework.common.constant.DataBus; import com.bonait.bnframework.common.db.mode.BPA_GOODS; +import com.bonait.bnframework.common.glide.GlideUtil; import com.bonait.bnframework.common.helper.I.MyClickListener; import com.bonait.bnframework.common.image.MyBitmapUtils; import com.bonait.bnframework.common.utils.AlertDialogUtils; @@ -70,7 +71,8 @@ public class image_sp_adapter extends RecyclerView.Adapter entry : map_fl.entrySet()) { @@ -358,7 +360,8 @@ public class GoodInformation extends LinearLayout implements MyClickListener { } else { edittext.setText(""); edittext1.setText(""); - new MyBitmapUtils().disPlay(cpfm, ""); +// new MyBitmapUtils().disPlay(cpfm, ""); + GlideUtil.showImage(cpfm.getContext(),"",cpfm,R.mipmap.loading3); url = ""; } @@ -644,7 +647,8 @@ public class GoodInformation extends LinearLayout implements MyClickListener { public void onMessage(Object msg) { if (msg != null) { url = (String) msg; - new MyBitmapUtils().disPlay(cpfm, url); +// new MyBitmapUtils().disPlay(cpfm, url); + GlideUtil.showImage(cpfm.getContext(),url,cpfm,R.mipmap.loading3); } } }); diff --git a/app/src/main/java/com/bonait/bnframework/modules/home/fragment/mode/add_good_control.java b/app/src/main/java/com/bonait/bnframework/modules/home/fragment/mode/add_good_control.java index 574d0bf9..391f1fe9 100644 --- a/app/src/main/java/com/bonait/bnframework/modules/home/fragment/mode/add_good_control.java +++ b/app/src/main/java/com/bonait/bnframework/modules/home/fragment/mode/add_good_control.java @@ -23,6 +23,7 @@ import com.bonait.bnframework.common.db.mode.BPA_GOODS; import com.bonait.bnframework.common.db.mode.BPA_GOODSTYPE; import com.bonait.bnframework.common.db.mode.BPA_MATERIAL; import com.bonait.bnframework.common.db.res.ResMaterilas; +import com.bonait.bnframework.common.glide.GlideUtil; import com.bonait.bnframework.common.helper.I.MyClickListener; import com.bonait.bnframework.common.image.MyBitmapUtils; import com.bonait.bnframework.common.message.MessageLooper; @@ -221,7 +222,8 @@ public class add_good_control extends LinearLayout { public void onMessage(Object msg) { if (msg != null) { url=(String) msg; - new MyBitmapUtils().disPlay(cpfm,url); +// new MyBitmapUtils().disPlay(cpfm,url); + GlideUtil.showImage(cpfm.getContext(),url,cpfm,R.mipmap.loading3); } } }); @@ -315,7 +317,8 @@ public class add_good_control extends LinearLayout { { edittext.setText(Data.name); edittext1.setText(Data.foreignKeyRe); - new MyBitmapUtils().disPlay(cpfm,Data.url); +// new MyBitmapUtils().disPlay(cpfm,Data.url); + GlideUtil.showImage(cpfm.getContext(),url,cpfm,R.mipmap.loading3); url=Data.url; int index=0; for (Map.Entry entry : map_fl.entrySet()) { @@ -331,7 +334,8 @@ public class add_good_control extends LinearLayout { { edittext.setText(""); edittext1.setText(""); - new MyBitmapUtils().disPlay(cpfm,""); +// new MyBitmapUtils().disPlay(cpfm,""); + GlideUtil.showImage(cpfm.getContext(),"",cpfm,R.mipmap.loading3); url=""; } diff --git a/app/src/main/res/layout/datatab/layout/pfsx_item.xml b/app/src/main/res/layout/datatab/layout/pfsx_item.xml index 8b43684a..b7f6b54c 100644 --- a/app/src/main/res/layout/datatab/layout/pfsx_item.xml +++ b/app/src/main/res/layout/datatab/layout/pfsx_item.xml @@ -22,8 +22,8 @@ android:layout_alignParentRight="true" android:layout_marginRight="@dimen/dp_10" android:text="回锅" - android:textAlignment="textEnd" - android:textSize="19dp" /> + android:gravity="center" + android:textSize="18sp" />