Android学习技巧

Android实用函数

一些Android实用函数收集,不断更新中。

1:获得屏幕的密度,用于屏幕适配

public static float getDensity(Context ctx) {

DisplayMetrics metrics = new DisplayMetrics();

WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE);

wm.getDefaultDisplay().getMetrics(metrics);

return metrics.density;

}

2:获得版本的名字

public static String getVersionName(Context context, String packageName) {

PackageInfo pInfo = null;

String rs = "";

try {

pInfo = context.getPackageManager().getPackageInfo(packageName, PackageManager.GET_META_DATA);

rs = pInfo.versionName;

}

    catch (Exception e) {

e.printStackTrace();

}

return rs;

}

3:获得图片的倒影,同时倒影渐变效果

public static Bitmap createMirro(Bitmap srcbitmap) {

int width = srcbitmap.getWidth();

int height = srcbitmap.getHeight();

int shadow_height = 15;

int[] pixels = new int[width * height];

srcbitmap.getPixels(pixels, 0, width, 0, 0, width, height);

// shadow effect

int alpha = 0x;

for (int y = 0; y < height; y++) {

        for (int x = 0; x < width; x++) {

            int index = y * width + x;

            int r = (pixels[index] >> 16) & 0xff;

            int g = (pixels[index] >> 8) & 0xff;

            int b = pixels[index] & 0xff;

            pixels[index] = alpha | (r << 16) | (g << 8) | b;

        }

        if (y >= (height - shadow_height)) {

            alpha = alpha + 0x1F;

        }

}

    

// invert effect

Bitmap bm = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

for (int y = 0; y < height; y++) {

bm.setPixels(pixels, y * width, width, 0, height - y - 1, width, 1);

}

return Bitmap.createBitmap(bm, 0, 0, width, shadow_height);

}

本文出自互动无限科技有限公司www.hudongwx.com。转载请说明出处

名称栏目:Android学习技巧
网址分享:https://www.cdcxhl.com/article10/jddpgo.html

成都网站建设公司_创新互联,为您提供标签优化微信公众号定制网站网站维护虚拟主机商城网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站建设网站维护公司