从Android中的drawable或layout创建自定义图标

时间:2012-05-09 08:56:04

标签: android layout icons drawable

我正在尝试创建自定义快捷方式图标,通过Intents调用我的应用内的活动。问题是我想通过修改我的应用程序的一个drawables或(最好是)我的一个布局来创建它们。

对于drawables,我试过这个

Drawable iconDrawable = getResources().getDrawable(iconResource);                       
iconDrawable.mutate();                      
iconDrawable.setColorFilter(0xff00ff00, PorterDuff.Mode.SRC_ATOP);                      
BitmapDrawable bd = (BitmapDrawable) iconDrawable;
bd.mutate();
bd.setColorFilter(0xff00ff00, PorterDuff.Mode.SRC_ATOP);
putShortCutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON, bd.getBitmap());

但它不起作用,drawable按原样显示,而不修改其颜色。

至于从自定义布局创建图标,这是我真正想做的......我根本不知道从哪里开始。

有人可以告诉我该怎么做或者至少指出我正确的方向吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

好的,我通过研究AnyCut源代码找到答案,“技巧”是使用Canvas:

http://code.google.com/p/apps-for-android/source/browse/AnyCut/src/com/example/anycut/CreateShortcutActivity.java

(更准确地说,是generatePhoneNumberIcon函数)。