2016-06-16 23 views
0

私はテキストとイメージを持つテーブルとセルを持っています。私は、セルが動的に生成され、いくつかの画像といくつかのdontを持っているので、完全に画像ビューを削除したい。ストーリーボードからuiimageviewを完全に削除しますか?

私が試みた:

imageview.hidden = true 

を私も試みた:

imageview.removeFromSuperview() 

が、それらが画像ではなく画像のビューを削除します。今のところ、画像がないときは、画像は画像ビューに表示されませんが、画像のないテキストの下には画像ビューがまだ存在するように見えるため、大きなギャップがあります。私はイメージビューを完全に削除したいので、画像のないセルでは巨大なギャップがそこにない。

+0

'UITableViewCell'をサブクラス化したのですか?デフォルトのセルを使用していますか? – Ike10

+0

@ Ike10どういう意味ですか、どうすれば確認できますか? – johnjay22113

+0

サブクラスは、存在するクラスのカスタムバージョンを作成するために開発者として行うものです。それが何であるかわからない場合は、https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Inheritance.htmlで詳細を知ることができます。あなたはおそらくこれをしなかったかもしれませんが、画像がない場合はimageViewを持たないサブクラスを作ることを検討したいかもしれません。ここで 'UITableViewCell'のサブクラス化について学ぶことができます:http://code.tutsplus.com/tutorials/ios-sdk-crafting-custom-uit-viewable-cells--mobile-15702 – Ike10

答えて

0

細胞が再利用されたことは重要です。 を追加していないため、削除しないでください。また、イメージビューを非表示にすると、必要なときに表示する必要があります。このように:

if needed { 
    imageview.hidden = false 
} else { 
    imageview.hidden = true 
} 
+0

はい、動作しますが、imageviewが完全に隠されていない場合は、見えないプレースホルダのように見えます...どうすれば削除できますか? – johnjay22113

+0

@ johnjay22113レイアウトには何を使用しましたか?自動レイアウト? – Lumialxk

+0

はい自動レイアウトとサイズクラスの両方がチェックされています – johnjay22113

0

Autolayoutを使用すると、この問題を解決できます。固定された高さと固定幅を与えてはいけません。また、イメージビューのコンテンツの抱き合わせ/圧縮優先度が正しく設定されているかどうかを確認します。

関連する問題