2014-10-31 93 views
3

使用autolayout時,UITableViewCell內部存在UIImageView問題。具體而言,我希望將圖像與邊緣(20pt)分開,並使用嚴格的尺寸(50pt),因此我定義了這一點: imageview to top = leading edgeview = 20 height = width = 50UIImageView忽略UITableViewCell中的AutoLayout約束

enter image description here

我發現imageview完全忽略了它的限制(對於可怕的笑臉感到抱歉,這是谷歌圖像給我的)。當然,我希望的佈局會有更多的內容,但不管內容是否存在,效果都是一樣的。

enter image description here

該項目的設置如下: 做一個單一視圖的應用程序 添加表視圖,連接數據源,並編寫樣板,使至少一個小區 創建tableviewcell用筆尖, 一個ImageView的添加到tableviewcell約束到頂部/領先(10件作品,有20的高度) 在imageview的設置圖像,因此您可以在運行時看到它

我覺得這應該是足夠的,但它似乎沒有工作,我錯過了一些愚蠢的東西?爲了比較,相同的設置沒有tableview沒有問題,imageview的行爲只是預期的方式

回答

0

我認爲它不會忽略它。你的設置是正確的。 您只需停止繪製外部圖像視圖。 在ImageView上勾選此項:Clip Subviews - > enabled。選擇同樣好的查看填充模式:縮放至填充或寬高比。

+0

感謝您的建議,我在另一篇文章中看到了剪輯子視圖,但它沒有解決它。 'Scale to Fit'也是默認選中的,我嘗試了'Aspect fit/fill',但他們似乎沒有幫助。 – Christophe 2014-10-31 14:21:20

+0

這解決了我的問題。我用一些固定大小的模板圖像(128x128)初始化了imageView。然後,用相機圖片更新圖像後,imageView顯示整個圖片,忽略128x128的限制。我檢查了框架,沒有任何改變。基本上我錯過了這個剪輯的東西。謝謝! – 2016-04-19 14:38:44

12

原來我錯過了一步保持安娜的版本工作,我已經將UIImageView與名爲imageView的屬性(覆蓋UITableViewCell默認屬性)連接起來,顯然,超類中的約束比我添加的任何東西都強。

+0

這裏同樣的問題。謝謝你清理那個 – jalmaas 2016-03-14 16:20:14