AriesHoo / FastLib

一个Android项目级快速开发框架,节约大部分写常用功能时间以实现更多项目业务功能及体验上的优化。使用说明见wiki
https://github.com/AriesHoo/FastLib/wiki
Apache License 2.0
492 stars 95 forks source link

在ConstraintLayout 布局中,TitleBarView 会被压缩 #24

Closed D-zy closed 5 years ago

D-zy commented 5 years ago

请教下,该如何处理

AriesHoo commented 5 years ago

使用库版本多少,截图看看效果?

D-zy commented 5 years ago

tx

D-zy commented 5 years ago

只要做操作了, 就会发生

AriesHoo commented 5 years ago

ConstraintLayout 下使用,确实在部分情况会出现测量问题,目前还未发现解决方案,可先使用LinearLayout代替下,找到解决方案后通知你

AriesHoo commented 5 years ago

你是库用的多少版本?手机系统版本多少?我这用ConstraintLayout点击没有出现你那种情况

D-zy commented 5 years ago

最新的版本也是,我在博主的项目里运行也出现

D-zy commented 5 years ago

<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent">

<include layout="@layout/fast_layout_title_bar" />

<com.aries.ui.view.radius.RadiusTextView
    android:id="@+id/rtv1"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    app:layout_constraintTop_toTopOf="parent"
    android:layout_marginTop="100dp"
    android:text="QQ样式" />

<com.aries.ui.view.radius.RadiusTextView
    android:id="@+id/rtv2"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:text="banner样式"
    app:layout_constraintTop_toBottomOf="@id/rtv1" />

<com.aries.ui.view.radius.RadiusTextView
    android:id="@+id/rtv3"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:text="PullScrollView"
    app:layout_constraintTop_toBottomOf="@id/rtv2" />

</androidx.constraintlayout.widget.ConstraintLayout>

AriesHoo commented 5 years ago

稍等,我这边试一试

D-zy commented 5 years ago

1

D-zy commented 5 years ago

2

AriesHoo commented 5 years ago

我知道了。。这个是华为这种导航栏可以开关系统上差异,我找找原因

D-zy commented 5 years ago

其他手机 也有,比如vivo

AriesHoo commented 5 years ago

是不是都是有虚拟导航栏那种的?

D-zy commented 5 years ago

不是,vivo 没有虚拟的

AriesHoo commented 5 years ago

我这边复现了。找下解决方案

AriesHoo commented 5 years ago

TitleBarView在ConstraintLayout中高度测量有问题,目前没找到原因所在。 解决方案 一:不使用ConstraintLayout 二 使用ConstraintLayout 不使用TitleBarView 使用如果少的话使用xml 定义TitleBarView 并配合StatusBarViewHelper适配沉浸式

后续找到原因再更新

AriesHoo commented 5 years ago

implementation 'com.github.AriesHoo:FastLib:2.2.12' 或 implementation 'com.github.AriesHoo.UIWidget:widget-core:3.2.9' 使用这个版本库,不过还是建议 ConstraintLayout与TitleBarView 不同时使用