2012-09-03 54 views
1

我正在使用節標題來顯示適當的部分單元格旁邊的一個小圖像「浮動」。節標題是透明的,只包含一個imageview。 這個解決方案的最初的問題是節標題佔用高度,這看起來很奇怪(每個節的開始處都有不必要的空白空間+當tableview滾動到第一個單元格時,圖像應該與第一個單元格的頂部對齊該部分的開始)。解決方法是將節標題高度設置爲1px。圖像仍然存在,但標題沒有使用任何高度,一切看起來都很棒。uitableview自定義透明標題

但是現在我需要在該圖像的頂部添加一個UIButton,不幸的是,當標題的高度爲1px時,它不起作用。它不被任何東西隱藏或覆蓋,它被正確繪製,但設置選擇器不會被調用。如果我設置一些高度,按鈕的作品。

簡而言之 - 如何在幾乎沒有高度的節標題中實現一個工作按鈕,或者如何實現具有正常高度但始終與單元格重疊的節標題(在tableview爲空時不使用任何空格滾動到該部分的頂部)?

任何幫助將不勝感激。

+0

所以點擊節標題總是與某些操作相關聯? –

+0

那麼,實際上點擊部分標題中的按鈕。 –

+0

嗯,不是整個部分的標題呢? –

回答

0

您可能能夠實現此目的的一種方法是在表格中添加透明視圖。你會攔截touchDown和touchUp。你可以計算他們是否在你的按鈕之一,如果是這樣,直接發送到按鈕,否則只是轉發他們。你沒有得到觸摸事件的原因可能是因爲觸摸不屬於標題框。

0

大衛H建議是我最初的想法,但我希望找到一個更優雅的解決方案。無論如何,這就是我最終實現這個功能的方式。我保持代碼儘可能簡單(我確定它可以以更優化的方式完成,工作足夠快,滿足我的需求) - 每個圖像添加到一個部分(不再需要重疊按鈕)是也添加到字典中,其中的章節號碼是關鍵字。 當我的遮罩層視圖(透明的添加在我的桌面視圖上)被觸摸時,我只需檢查CGRectContainsPoint是否觸摸對應於我的字典中的任何視圖。