2015-06-12 78 views
1

我添加了一個UISwitch作爲UITableViewCell的contentView的子視圖並將isOn設置爲true。切換後,它變得如下,看起來很奇怪。在UITableViewCell中看起來很奇怪的UISwitch

有誰知道爲什麼會發生這種情況,以及如何解決這個問題?

怪異UISwitch: https://dl.dropboxusercontent.com/u/43497092/stackOverflow/Screen%20Shot%202015-06-12%20at%209.28.43%20AM.png

爲了比較,正常看UISwitch應該是這樣的:

普通UISwitch: https://dl.dropboxusercontent.com/u/43497092/stackOverflow/Screen%20Shot%202015-06-12%20at%209.32.43%20AM.png

+0

記得接受你的問題的答案(通過點擊勾號)。它幫助每個人! :)在15代表處,您可以通過投票問題或答案來爲網站做出貢獻。 –

回答

0

你真的想讓你的開關成爲你自定義的UITableViewCell類的一部分,並被創建爲單元實例化的一部分。然後可以通過出隊單元的屬性訪問交換機。

layoutSubviews不是要添加控件的地方。您可能甚至不需要覆蓋它,因爲自動佈局約束可以照顧交換機的佈局。

+0

沒錯!感謝您的建議! – riven

0

這事,因爲我每次添加一個新的交換機時「 layoutSubviews「被調用。當交換機的值改變時,在前一個交換機的頂部添加一個新的交換機。

解決方法是從超級視圖中刪除以前的開關,然後將新開關添加到視圖。

0
static NSString *CellIdentifier = @"Cell"; 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

並定義何時單元值等於零。 然後,開關不會那樣。

相關問題