-
Notifications
You must be signed in to change notification settings - Fork 2.7k
QMUI Q & A
cgspine edited this page Dec 29, 2017
·
3 revisions
QDWidgetContainter 在 QDDataManager 中被使用到,它是通过java注解功能在编译时动态生成的,是为了给 QD 项目提供展示所需的 QMUI 组件信息。部分人员在拷贝 QD 项目中的代码时会带上 QDDataManager 相关的代码,不管是有心还是无意,都是不应该的。
QMUI 内部会依赖 support 包,而一般项目也会引入 support 包,这难免会出现 support 版本冲突。gradle 有提供版本冲突的解决措施,所以在项目中添加如下代码即可:
configurations.all {
resolutionStrategy {
force "com.android.support:recyclerview-v7:$supportVersion"
force "com.android.support:appcompat-v7:$supportVersion"
force "com.android.support:design:$supportVersion"
force "com.android.support:support-vector-drawable:$supportVersion"
}
}
因为 QMUI 里的很多控件都依赖 theme,所以要求 AppTheme 的 parent 是 QMUI.Compat(或QMUI,不推荐)。使用这 2 个 theme 本质上是为了给 QMUI 自定义的 attr 赋值。
如果你有使用自己主题的需求,目前可以使用你自己的主题,然后将 qmui_themes_compat.xml 文件中的 <style name="QMUI.Compat"></style> 里的 item 拷到自己的主题中,以保证依赖 theme 的控件能正常工作。
QMUIDemo 的 versionCode 是通过 gitVersion 控制的。 如果通过 git clone 获取源码,则可以正常编译;如果直接下载 Github 打包的 zip 文件,则需要修改 qmuidemo/build.gradle 文件,写死一个 gitVersion