Extend com.mikepenz.materialdrawer.AccountHeaderBuilder



我需要构建自己的AccountHeaderBuilder实现。

所以我正在尝试从 MaterialDrawer 库扩展一个类。在 Android Studio 中,我需要如何继续才能做到这一点?是否应该将材料抽屉库作为模块导入?

如果是,为什么我会收到以下错误: Error:(1290) Error retrieving parent for item: No resource found that matches the given name 'MaterialTheme'.当我将项目作为模块导入时...

即使我的成绩设置为:

  compileSdkVersion 23
  minSdkVersion 15
  targetSdkVersion 23

我的类扩展帐户标题生成器需要在同一包中...所以我的理解是,我不能只在 gradle 文件中使用。

compile('com.mikepenz:materialdrawer:5.0.9@aar')

所以,用一句话来说:我如何继续能够从另一个项目扩展类?

非常感谢您的帮助

ps:我已经能够集成这个库并使它在我的项目中工作,但现在我需要额外的功能。

发生异常是因为缺少所需的依赖项。MaterialDrawer 依赖于 Materialize 和 FastAdapter 库,它们提供了所需的帮助程序类。

MaterialDrawer 的文档指出要添加transitive=true,这将自动解析MaterialDrawer的子依赖项

因此,请将您的编译语句替换为:

compile('com.mikepenz:materialdrawer:5.1.4@aar') {
    transitive = true
}

截至评论中提到的要求。也可以覆盖用于AccountHeader https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/res/layout/material_drawer_header.xml 的布局

您可以将该布局更改为您想要的任何内容,只需记住需要保持不变的id,并且您不能像配置文件一样删除现有视图,但您可以更改它,以便ImageView在布局内,并将此布局设置为 gone 。因此,配置文件将不再可见。

对于附加行。您可以将此容器添加到包含现有两个TextViewselection容器中。之后,您只需侦听来自AccountHeaderBuilderonProfileChanged事件,并在配置文件更改时更新此TextView

(可以通过在AccountHeader容器视图上使用findViewById搜索来获取此视图 https://github.com/mikepenz/MaterialDrawer/blob/develop/library/src/main/java/com/mikepenz/materialdrawer/AccountHeader.java#L38)

相关内容

  • 没有找到相关文章

最新更新