![](/img/trans.png)
[英]Android: How to change dynamically size of child views to fit parent view size?
[英]Let child views determine size of parent view in android
我有一个自定义视图/布局,需要根据子项的内容进行大小调整。 布局如下所示:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="100dp"
android:layout_height="64dp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/rectangle"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@drawable/rectangle"
android:orientation="horizontal"
android:padding="5dp">
<ImageView
android:id="@+id/iconImageView"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_gravity="center_vertical|left"
android:contentDescription="Icon"
android:src="@drawable/iconplaceholder"
android:scaleType="fitCenter"/>
<TextView
android:id="@+id/labelTextView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:textColor="@color/white"
android:gravity="center|left"
android:textSize="16dp"
android:text="Hello"/>
</LinearLayout>
<View
android:id="@+id/triangle"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_gravity="center_horizontal"
android:background="@drawable/triangle"
android:rotation="180"/>
</LinearLayout>
我想做的是:
@+id/labelTextView
的整个文本在视图中可见,并在需要时允许其变高,但不超过最大宽度。 @+id/iconImageView
的大小,并确保相应调整父视图的大小 我想我需要重写我的观点的onMeasure,但是如果这是正确的方法,请提出建议。 另外,在给定一组约束(例如最大宽度)的情况下,如何测量TextView的大小?
我认为您可以将父级的layout_height设置为wrap_content
。 这样,它就将其视图设置为所需的大小,具体取决于其内部子项的大小。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.