【问题标题】:Including AOSP classes in my app在我的应用程序中包含 AOSP 类
【发布时间】:2012-02-11 08:15:30
【问题描述】:

我创建了一个自定义类来扩展 ProgressBar 以获得一些额外的功能。一切正常,但我发现它在具有不同 ROM 的不同手机上的显示方式有所不同。

例如,它在 Android 模拟器上运行完美,但在我运行 MIUI ROM 的实际手机上却有点混乱,但在我的旧 HTC 上运行良好。我想这是因为 MIUI 有它自己的自定义 ProgressBar 类,以及他们制作的其他自定义小部件类,以赋予 ROM 不同的外观。

我想知道是否有办法在我的应用中包含 2.3.3 AOSP ProgressBar 类,以便它覆盖用户手机上已经存在的类,而不管用户的自定义 ROM 是什么。

谢谢

【问题讨论】:

    标签: android class include android-source


    【解决方案1】:

    您可以从 AOSP 复制 ProgressBar 源代码并从中更改包名称。不过这可能会有一些问题。

    1. 您必须通过完整的包名 + 类名来引用它 在 XML 布局中使用它时。
    2. 复制代码并非易事。 你必须修复你看到的编译错误。也许 为私有变量等创建反射钩子。

    【讨论】:

    • 谢谢,这是我认为我需要做的。我已经在我的类中复制了扩展 ProgressBar 的 AOSP 源代码。给了我大量缺失变量之类的错误。我不在乎是否必须为布局使用完整的包名,我已经为我的扩展类这样做了。我想我必须解决所有这些错误。
    猜你喜欢
    • 2019-04-30
    • 2018-07-29
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-17
    相关资源
    最近更新 更多