获取阴影/轮廓/形状的图标

时间:2012-09-02 16:00:05

标签: android icons shape homescreen outline

我想知道是否有可能在Android主屏幕上获得阴影/图标形状?我知道当你向主屏幕添加一些自定义图标然后移动它时你会得到该图标的轮廓。 (至少在samsungs TouchWiz 4+和API 11+中)。那么有没有办法在主屏幕上获取图标的形状和位置?

1 个答案:

答案 0 :(得分:5)

以下是您可以做的简短示例:

public class MainActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ImageView view = ((ImageView) findViewById(R.id.img_outline));
        view.setImageBitmap(createOutline(BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher)));
        view.setColorFilter(Color.RED);
    }

    private Bitmap createOutline(Bitmap src) {
        Paint p = new Paint();
        p.setMaskFilter(new BlurMaskFilter(10, Blur.OUTER));
        return src.extractAlpha(p, null);
    }
}

这是你的想法吗? (请注意,如果必须将模糊图像与原始图像对齐,则应将长度为2的int数组传递给extractAlpha。数组将包含用于对齐轮廓的偏移量。)