java - Android ConstraintLayout - 如何创建空间不均匀的链?
问题描述
我如何使用 ConstraintLayouts 创建它?我想将一些视图附加到右侧,一些附加到左侧,中间的可变空间取决于右侧/左侧视图的长度。我知道链,但它们总是在视图之间添加一个均匀的空间,我不想给空间一个固定的值。在线性布局中,我会做这样的事情:
<LinearLayout >
<ImageView />
<TextView />
<Space
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="1" />
<ImageView />
<ImageView />
<TextView />
<LinearLayout/>
这可以在 ConstraintLayout 中复制吗?
解决方案
Constraints
当您可以直接用于单个元素时,为什么需要链或空间。看到这个伪代码,这会有所帮助。
<androidx.constraintlayout.widget.ConstraintLayout
.....
.....
>
<TextView
.....
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginStart="10dp"
android:drawableStart=" Your clock icon" //Using this you don't have to use a separate ImageView
/>
<ImageView
.....
app:layout_constraintEnd_toStartOf=" ID of your Download Count TextView"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginEnd="10dp"
/>
<TextView
.....
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginEnd="10dp"
android:drawableStart=" Your Download icon"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
我使用drawbleStart
了而不是单独的ImageView
,如果您愿意,可以使用,只需使用app:layout_constraintEnd_toStartOf=" ID of the View"
. 给定的边距是屏幕结束/开始和视图之间的空间,您可以根据需要调整它。
这将为您提供您共享的视图。检查这是否有帮助。
推荐阅读
- php - 使用 Laravel Cashier 试用版创建付费计划时出错
- php - 一次存储多个变量时的 PHP 内存使用和限制
- java - arraylist 项目不能应用于另一个列表
- angular - Spring 5 MVC Angular 5 App 抛出 404 错误
- java - 在记录器中写入自己的异常
- c - 如何将 c-libraries 与 COOJA ContikiOS 链接?
- css - 如何为 openshift 模板使用 FontAwesome 图标
- asp.net - 无法在前端分配 lambda 表达式来决定是否需要某个字段
- android - Restoring a view after orientation change
- html - 设置了半混合模式的图像