2010-11-10 48 views
0

我希望有人閱讀這個可能能夠解決這個問題。我有一個普通的UITableView包含自定義UITableViewCells,每個單元格是由tableView:heightForRowAtIndexPath提供不同的高度:並且表不滾動。單元本身實際上是一個或兩個UILabel的容器,沒有什麼特別的。除了沒有披露用於其他任何內容之外,其中三個單元格顯示了定製披露。自定義的披露的UIImageView的分配到細胞editingAccessoryView與28x29圖像然而UIImageView的大小設置爲40x29給使用contentMode左一個更好的位置。具有自定義披露的UITableViewCell會導致錯誤對齊?

這應該工作正常,但發生的事情是,當披露出現在編輯模式下,他們並不都有着相同的位置 - 兩個可能是相同的x和第三可能是5px的不同。這似乎取決於給予每個細胞的高度,他們基本上四處移動。我看不出他們是如何聯繫在一起的,但他們發現了一組高度可以使三人的預期結果處於相同的位置。這不是理想的,但一直工作到現在爲止 - 我別無選擇,只能改變高度,所以對齊是一個大問題。

如果我刪除自定義披露那麼標準的披露工作完美?

我試過的東西很多的,即

  • 消除在UIImageView的
  • 額外的寬度縮小圖像
  • 與細胞高度玩耍的大小 - 公開的內容只是走動
  • 與其他控件取代的UIImageView的 - 沒有區別

如果您有任何意見爲什麼這可能是我喜歡在這裏他們,謝謝。

+0

因爲我已經意識到,當所有顯示公開的細胞不會出現此問題有相同的高度,但其他細胞可以是任何高度。我已經成功添加了其他「空白」單元格來根據需要格式化表格。鑑於我在使用標準披露方面沒有問題,我懷疑這是一個錯誤。 – 2010-11-11 17:15:41

回答

0

我的猜測是它的,因爲你正在使用留在UIImageView的內容模式。使用內容模式中心。

的意見得到拉伸時高度的變化四面八方,但圖像停留在視圖的左邊緣...

+0

我已經嘗試改變我添加的額外寬度和contentMode,可悲的是這並不能解決問題。 – 2010-11-10 20:39:53

+0

我的理解是,editingAccessoryView將設置你的UIImageView的大小 - 無視你有什麼它初始化爲。所以,改變圖像視圖的大小將沒有什麼區別。另一種方法是使用將UIImageView添加到的容器UIView,其中autoResizeSubviews設置爲NO。如果圖片仍然四處移動,你可以重置其容器視圖中的位置(子類,並重寫的UITableViewCell layoutSubviews) – 2010-11-11 08:51:41

+0

尼克你好,感謝您的想法。寬度改變的作用,我可以改變它到我想要的,我可以看到改變,如果我有所有的細胞在同一高度,我沒有問題。這是當我改變問題出現的一些單元格的高度時。 – 2010-11-11 17:13:43

相關問題