我需要确定uicollectionview的高度。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f0f"
android:weightSum="100"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="20"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="20"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
</LinearLayout>
以上解决方案适用于我项目中的某些情况。在这种特定的情况下,我需要计算行数,然后用一个数字多次找到高度。
let layout = contactCollectionView.collectionViewLayout
let heightSize = String(Int(layout.collectionViewContentSize.height))
如何查找行数?
更新
这是我的collectionView。每个单元格都有不同的宽度(因为它是字符串)。所以它有不同的行。此collectionView的宽度为 view.frame
的宽度答案 0 :(得分:2)
您可以比较collectionView
的{{1}}是否大于之前的宽度(s),然后将rowCounts增加1。我假设您正在实施width
方法,并且每个单元格您目前知道动态UICollectionViewDelegateFlowLayout
。如果您不知道当时的宽度,您还可以计算考虑width
以及每个单元格中的其他内容所需的width
string
。
以下是如何计算UIfont
https://stackoverflow.com/a/30450559/6106583
width
的参考资料
如下所示
string