2017-08-22 15 views
0

Swift 3とXcode 8.1でアプリを作成しました。私はUITableviewUIViewを表示し、その中のボタンをクリックすることで隠すことができます。 UIViewが表示された場合、最後のセルUITableviewは完全に表示されません。コンテンツ全体のコンテンツに実行時間中にuitablviewの高さを増やす

私はボタンに次のコードを使用し

:詳細については

func filterShowHide() 
{ 
    if !isShown 
    { 
     filterImage.image = UIImage(named: "ME-Filter-re") 
     self.filterView.isHidden = false 
     self.tableViewTop.constant = 0 
     // tableViewHeight.constant = tableViewHeight.constant * 1.5 
     isShown = true 
    } 
    else 
    { 
     filterImage.image = UIImage(named: "ME-Filter") 
     self.tableViewTop.constant = -(self.HeaderView.frame.height) + self.filterBTN.frame.size.height 
     self.filterView.isHidden = true 
     isShown = false 
     // tableViewHeight.constant = tableViewHeight.constant/1.5 
    } 
    UIView.animate(withDuration: 0.25) { 
     self.view.layoutIfNeeded() 
    } 
} 

ここのスクリーンショットです:クリックする前と

私は見ることができますどのように

Before clicking After clicking

をクリックした後

は、最後の細胞は完全に?

+0

に使用している値でtableView.contentInset.topを更新することができます高さがより大きい。これは、テーブルビューをスクロール可能にしています。右..?? – Amit

+0

どちらの場合でもテーブルビューがスクロールしていないようです。私は正しい? –

+0

@Amitいいえ、テーブルビューの高さは変更されません。つまり、変更できませんでした。 私はそれを行うために多くの方法を試していますが、うまくいきません。 最後のセルまでスクロールすると、完全には表示されません。このようなスクリーンショットで。 –

答えて

0

私は問題があなたのテーブルビューの高さはまだ同じで、あなたがトップの制約を更新するとプッシュダウンされると思います。

あなたは、そのスーパービューの下にテーブルビュー下の制約を設定する必要がありますか、あなたはあなたがテーブルの高さと細胞を減少さself.tableViewTop.constant