gpt4 book ai didi

android - Android 上的可下载主题

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:29 25 4
gpt4 key购买 nike

我目前正在研究在我的应用程序中添加对可下载皮肤/主题的支持的可能性。由于无法在运行时更改 res 文件夹,我正在寻找替代方案并且已经得出一些结论。

我尝试让 2 个应用程序从辅助应用程序访问资源(具有不同的样式/布局/主题和匹配的名称),方法如下:

Resources res = getPackageManager().getResourcesForApplication("org.example.foo");
res.getIdentifier("AnotherTheme", "style", "org.example.foo");

Context externalContext = createPackageContext("org.example.foo", Context.CONTEXT_IGNORE_SECURITY);
Theme externalTheme = externalContext.getTheme();
getTheme().setTo(externalTheme);

在与这种“远程”加载相关的其他方法中。然而,这些都不起作用

似乎从另一个包加载资源只适用于“直接”资源,如可绘制对象或字符串。我的理论是样式和主题与引用一起工作,因此系统无法在当前上下文中应用这些引用。

问题是:可以用这种方法还是类似的方法来做到这一点?

在此之后,还有另一种方法......完全绕过 Android 资源管理器并以编程方式管理所有内容。我在这里主要关心的是性能,所以有人知道在 Android 应用程序上预编译资源做了什么样的优化吗?还是在运行时?

最佳答案

我即将开始一个具有类似功能的项目。我一直在尝试以编程方式更改颜色和可绘制对象,尽管它很麻烦,但效果很好。

我无法真正评论性能,因为我的研究应用程序很小。我成功地使用了布局背景、按钮状态和带有状态的微调器/ ListView 背景。对以编程方式设置背景和大型 ListView 的任何体验感兴趣!

关于android - Android 上的可下载主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21602498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com