0

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

对于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());

但它不起作用,可绘制对象按原样显示,而不修改其颜色。

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

谁能告诉我该怎么做或至少指出我正确的方向?

谢谢!

4

1 回答 1

1

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

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

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

于 2012-05-09T17:25:01.787 回答