That doesn't solve the problem, which is that you are trying to create a mix of resources from two .apks and you can't currently do that.
I would assume these other apps are just directly loading the bitmaps from the other .apk where they need them. On Wed, Aug 1, 2012 at 3:11 PM, Mor G. <gaz...@gmail.com> wrote: > Hi Dianne, thanks for the info. > > I've seen methods like Resources.Theme.applyStyle which capable of > overriding existing attributes with a supplied style resource-id, which > would have been useful if I could tell it from what resource to get the > resource-id from. > Isn't there a similar method that I can use to only override certain > attributes in my existing applied theme? > > If not, could you maybe suggest a different way to approach this problem? > There are lots of themed apps on Android, so I'm sure there's a way to do > this. > > Thanks again, > Mor. > > > On Thursday, August 2, 2012 12:51:30 AM UTC+3, Dianne Hackborn wrote: > >> You can't really do this by simply pointing to a theme. The resources >> object is used across the view hierarchy to load resources; to set the >> theme from another apk you will need to have the resources coming from >> there, but then you won't be able to access any of your own resources that >> you need (like strings etc). >> >> On Wed, Aug 1, 2012 at 2:38 PM, Mor G. >> >>> Hi Richard, thanks for the reply. >>> >>> I have an app with light and dark themes defined in themes.xml. >>> I have a setting to allow the user the select light/dark theme in the >>> app. >>> This works great. >>> >>> Now the themes are pretty heavy in graphics, since they define not only >>> styling but different drawables as well, so I want to offer more themes >>> like blue, green, red, etc. as external apks in Google play, like I've seen >>> many other apps have done, so a user could install a "MyApp blue theme" >>> apk, and then he'll be able to choose this theme from the main app settings. >>> >>> I've tried using: Resources res = pm.getResourcesForApplication(** >>> appInfo); >>> Which gets the resources object of the external apk, but I can't seem to >>> get and apply the theme from it using activity.setTheme(** >>> externalTheme). >>> >>> I've tried using: Context themedContext = activity.** >>> getApplicationContext().**createPackageContext("com.**myapp.blue", >>> Context.CONTEXT_IGNORE_**SECURITY); >>> Which gets a themed context, but again, couldn't set this theme to my >>> running activity. >>> >>> I've read a lot about this, but couldn't find any complete solution. >>> >>> Thanks, >>> Mor. >>> >>> >>> On Thursday, August 2, 2012 12:17:40 AM UTC+3, RichardC wrote: >>>> >>>> If it's your own application then read about library projects. >>>> Otherwise unless the app you are reading resources from is available >>>> under a suitable open source licence then in my opinion what you are trying >>>> to do could be infringing copyright. >>>> If the app is open source then just download it and use the resources. >>>> >>>> On Thursday, April 5, 2012 6:51:58 PM UTC+1, Terry wrote: >>>>> >>>>> I'm able to use getResourcesForApplication and getIdentifier to get >>>>> the individual resources from another application. However, when I try to >>>>> call setTheme using a remote theme.xml from another app, the references >>>>> inside theme.xml point to the app that I'm running, not pointing to the >>>>> remote application where the theme.xml is. As a result, I get a >>>>> ResourceNotFoundException inside theme.xml where I try to use the styles I >>>>> defined from the remote app. In other words, I can apply theme.xml but not >>>>> reference to the styles inside it. >>>>> >>>>> Moderator, please don't block this post. I googled for days and have >>>>> not found a resolution to it. >>>>> >>>> -- >>> >> -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to android-developers@googlegroups.com > To unsubscribe from this group, send email to > android-developers+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en > -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en