Android 图标加框 优化显示效果
发布时间:2020-05-24 21:31:07 所属栏目:Java 来源:互联网
导读:Android 图标加框 优化显示效果
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
import android.os.Bundle;
import android.widget.ImageView;
public class MainActivity extends Activity {
private ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.imageView1);
// 获得imageview中设置的图片
Bitmap lay1 = BitmapFactory.decodeResource(getResources(),R.drawable.icon_folder);
Bitmap lay2 = BitmapFactory.decodeResource(getResources(),R.drawable.mobileqq);
// 获得图片的宽,并创建结果bitmap
int width = lay1.getWidth();
Bitmap resultBmp = Bitmap.createBitmap(width,width,Bitmap.Config.ARGB_8888);
Paint paint = new Paint();
Canvas canvas = new Canvas(resultBmp);
canvas.drawBitmap(lay1,paint);// 画下层
// 让上层的图标居中显示
int top = 0;
if (lay1.getHeight() > lay2.getHeight()) {
top = (lay1.getHeight() - lay2.getHeight()) / 2;
}else{
//这里可以判断图片是否大于框,进而再继续获取大于的多少,进行上层图片的缩放,然后再进行交集,方法就不写了
}
int left = 0;
if (lay1.getWidth() > lay2.getWidth()) {
left = (lay1.getWidth() - lay2.getWidth()) / 2;
}else{
//这里可以判断图片是否大于框,进而再继续获取大于的多少,进行上层图片的缩放,然后再进行交集,方法就不写了
}
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_ATOP));// 选择交集去上层图片
canvas.drawBitmap(lay2,left,top,paint);
imageView.setImageBitmap(resultBmp);
}
}
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – Hibernate和Flyweight
- Java8:Stream在同一个流中映射两个属性
- java – 调用返回null的getGraphics()的任何替代方法
- java – 如果json中的值为null,则为属性提供默认值
- java – Google Cloud Messaging:当iOS App处于后台时,不会
- java – 从JDK 1.5到1.6的代码迁移
- java中的 toString()方法实例代码
- java – Spring mongo添加标准和运算符dynamicaly
- java – Maven – 使用JDK 7编译JVM 5
- 过滤器链的GlassFish问题:java.lang.IllegalStateExceptio
