2017-10-13 28 views
0

我在具有Aspect Fit內容模式的自調整表格單元格內部有一個ImageView。 當表格完全加載圖像本身看起來不錯時,它會調整大小以適應單元格的寬度,同時仍保持原始比例。 但是,表格單元的高度與Aspect Fit內容模式從未應用於圖像視圖一樣大。自適應表格單元格中的ImageView在應用Aspect Fit之前使用圖像高度

enter image description here

此圖像中的紅色是圖像視圖,上方和下方的實際圖像的空間是什麼,我試圖避免。

當我更換看點飛度與Aspect填充,這是同一個小區的樣子:

enter image description here

這就是我的意思是,當我說,它看起來像圖像視圖是使用的高度應用Aspect Fit之前的圖像。

我是否缺少ImageView中的約束或設置? 任何幫助表示讚賞!

+0

你有沒有爲你的單元格中的圖像視圖的高度設置一個約束? –

+0

這些圖像來自哪裏?它們是從遠程服務器下載還是在您的assets.xcassets文件中? –

+0

圖像是從URL下載的。 – user3029918

回答

0

如果正在從服務器下載圖像,則需要一秒或一毫秒才能下載圖像。他們下載的時間對用戶來說是顯而易見的。最佳用戶體驗是在下載圖像之前明確設置高度和寬度。如果您使用第三方API獲取圖像(即Facebook或YouTube API),則返回將包含圖像URL以及圖像的高度和寬度。這樣,您可以設置單元格的高度和寬度,然後等待圖像下載而不會中斷或更改單元格的大小。這將是最好的辦法。通過明確設置高度和寬度,您無需擔心要用於圖像視圖的內容模式。如果您明確設置該單元格中圖像視圖的高度和寬度,我只會建議使用自定義UITableViewCell。我希望這有幫助!

我剛剛看到您最近的評論。您可以根據正在返回的圖像調整每個單元格中每個圖像視圖的大小。您不需要爲圖像視圖設置固定高度。您可以根據該單元格中的圖像更改每個單元格的高度。我只是建議在下載圖像之前進行此操作。

如果您正在使用故事板,那麼一種方法是爲圖像視圖的高度限制創建一個出口。

相關問題