2016-05-30 3 views
0

私はautolayoutで作成されたカスタムテーブルビューセルの高さをゼロにしたいと考えています。基本的には、コンテナビューはcell.contentviewのサブビューとして追加されています。コンテナビューの上、下、左、右はコンテンツビューの上、下、左、右に固定されます。ある条件の下では、高さを0にしたいと考えています。カスタムセル(自動レイアウトで作成された)の高さをゼロにします。

私はコンテンツビューの制約を反復し、この制約が問題の原因であることを発見しました。

NSLayoutConstraint:0x1369d8670 UITableViewCellContentView:0x1369b1a90.height == 48

この制約は、テーブルビューでデフォルトで追加されます。

私が試したこと:コンテナビューのすべてのサブビューを削除しました。しかし、これはセルの高さをゼロにしません。私はを行うにはしたくない

もの:

  1. 私は多くのサブビューに多くの行を持つことになる全体のテーブルビューだってをリロードしたくありません。
  2. 私はゼロに高さを設定することができますどのように行

を削除したくありませんか?

答えて

0

特定の行をリロードして、高さ変更のテーブルビューの代理メソッドheightForRorAtIndexpathを呼び出すことができます。特定の行をプログラムで再ロードするときに、高さ1を設定できます。ゼロにしたい一時的なindexpathを保存することができます。 clipsToBounds=YES

コール[self.tableView layoutIfNeeded];

+0

によって

クリップすべてsubiviewsはあなたsuggesstionが、運を試してみました。セルのコンテンツビューは引き続き表示されます。私はコンテンツビューの制約を辿り、という制約を見つけました。 –

+0

特定のセルをリロードして、 'heightForRorAtIndexpath'に0を戻すことはやりました。 –

+0

@ JafferSheriff、それで高さ0で動作しますか? –

関連する問題