2011-11-26 43 views
0

在我的應用程序,我有一個UITableView和每個UITableViewCell的利用自定義背景和風格與下面的代碼在「WillDisplayCell」的方法:UITableViewCell - 如何設置選擇裁剪?

UIImage *cellBackgroundImage = [UIImage imageNamed:@"TableView_Cell_Background_iPhone"]; 

UIImageView *backgroundImage = [[UIImageView alloc] initWithImage:cellBackgroundImage  highlightedImage:cellBackgroundImage]; 

[cell setBackgroundView:backgroundImage]; 

[backgroundImage release]; 

的問題是,PNG我使用爲背景是一個矩形,但UITableViewCell是一個具有特定圖層半徑屬性的圓角矩形。當我選擇一個單元格時,背景覆蓋了單元格的圓形特性,並且出現了藍色突出的尖銳矩形。有沒有辦法設置選定的狀態角半徑或沿着這些線?我唯一的選擇,如果不是將創建一個完美適合圓角矩形的PNG背景。

謝謝。

回答

1

我會將單元格的selectionStyle設置爲UITableViewCellSelectionStyleNone,這將停止藍色突出顯示。然後開始做一個自定義選擇工作。

您將不得不製作UITalbeViewCell的自定義子類。覆蓋setSelected或如果這不起作用用戶一個手勢識別器或覆蓋touchesBegan等。我做了一次,之前,我忘了如何,如果你有麻煩讓我知道和生病查找它。

當您檢測到單元格被選中時,可能會創建一個半透明的疊加層作爲PNG,並使其在選中單元格時顯示。或者降低背景圖像的透明度或添加顏色蒙版。