UITableViewCellのデフォルトの高さは?


166

この情報は見つけやすいと思いました:-)

UITableViewCellのデフォルトの高さは?44ピクセルのように見えますが、私は確認したいと思います。

回答:


361

44ピクセルです。間違いなく。私はその数を決して忘れません。

44pxは、UIToolbarおよびUINavigationBarのデフォルトの高さでもあります。(横向きに自動回転すると、どちらも32pxに切り替わります。)


61
ハハ、「私はその数を決して忘れないだろう」は不吉に聞こえます;-)
Rob

4
@antony:view.bounds.size.height
samvermette

4
@MikeyWard:おそらくあなたはすでにこれを理解しているでしょうが、1pxセパレーターは高さに含まれています。実際には、セルの一番下のコンテンツをカバーしています。
ベンS

44
技術的には44ポイントです。Retinaディスプレイでは88pxになります。髪の毛や何かを分割しないでください。
Ben Mosher、2011年

23
tableView.rowHeight
ハンター、

27

どのデバイスでもデフォルトのディメンションが必要な場合は、UITableViewAutomaticDimensionを使用できます。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

    return UITableViewAutomaticDimension;
}

現在44ピクセルがデフォルトですが、アプリがデフォルト値の設定に依存している場合、これは便利な方法です。


3
UITableView.automaticDimensionsSwift 4でに名前が変更されました
ボット

これは、デフォルトの高さが必要な場合にのみ機能します。デフォルトの高さの倍数が実際に必要な場合、これによって返される値は実際の高さではありません。Appleは、実際のポイントの高さをこのマジックナンバー(たまたま-1)の後ろに隠しました。
PKCLsoft

16

の場合style = UITableViewStyleGrouped、上下のセルのデフォルトの高さは実際には45.0f(ではなく44.0f)です。また、グループ化されたテーブルが1行のみの場合、セルの高さはになります46.0f


それはセパレータを含んでいますか?
lhunath

10

これをその場で計算したい場合は、ダミーのテーブルセルを割り当て、その高さを読み取ります

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
int height = cell.frame.size.height ;

このようにして、iOSの将来のバージョンの変更を防御しますが、そうは思われません。


これは、自動レイアウトで問題がある
MobileMon

27
すべてが自動レイアウトに問題があります。
devios1 2013

問題のある方法、正確には?
AndrewR

3

「style = UITableViewStyleGroupedの場合、上下のセルのデフォルトの高さは実際には45.0fです(44.0fではありません)。そして、グループ化されたテーブルが1行のみの場合、セルの高さは46.0fになります。」それは間違っています!!実際には44.0f!私はそれをテストするだけです!


2

それはほぼ正しいように聞こえます。ただし、Interface Builderを確実にロードできるようにするには、UITableViewCellをプロジェクトに入れ、インスペクターウィンドウでサイズプロパティを確認します。MacBookを持っていないので確認できません。しかし、誰かからより良い答えが得られない場合は、それで自分を確認できます。


ああ、それは私が最初に44を手に入れた場所です。
Rob、

2

スウィフト4スウィフト5単純に使用します。

UITableView.automaticDimension

44pxの使用は、画面のピクセル密度によって異なるため、十分ではありません。


0

iOS 12では、iPhone Xのようなデバイス(X、XS、XS Max、XR)のデフォルトの高さは49ptです。

iOS 12上の他のデバイスは、デフォルトで44ptのままです。それは微妙な違いですが、直接比較で良い改善のように感じます。

あなたが私を信じないなら、このスクリーンショットで自分のために測定してください(3で割ることを忘れないでください)...;)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.