ios cell常用屬性
詳解地址:
設定UITableViewCell的accessoryType
如果希望cell上面顯示一個淺灰色的箭頭,可以通過accessoryType來達到目的,程式碼如下,
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
這樣就設定了箭頭裝的type,我們可以設定多種型別,蘋果定義的列舉型別如下,
typedef NS_ENUM(NSInteger, UITableViewCellAccessoryType) {
UITableViewCellAccessoryNone, //不顯示任何的accessoryView
UITableViewCellAccessoryDisclosureIndicator, //淺灰色箭頭圖示
UITableViewCellAccessoryDetailDisclosureButton, //顯示詳情的按鈕
UITableViewCellAccessoryCheckmark, //就是你考試時候打鉤的鉤形狀
UITableViewCellAccessoryDetailButton NS_ENUM_AVAILABLE_IOS(7_0) //
};
讀者可以逐個試一試,找到自己想要的效果。如果上面的效果都不讓人滿意,那隻能自定義cell,然後在cell上面放上UIImageView,並貼上自己設計的圖片了。
3、設定UITableViewCell的點選風格selectionStyle,
有的時候我們需要點選cell時候相應的cell背景加深的效果,有的時候我們不需要,這時候可以使用下面的語句來實現,
settingCell.selectionStyle = UITableViewCellSelectionStyleNone
檢視文件中的列舉型別如下,
typedef NS_ENUM(NSInteger, UITableViewCellSelectionStyle) {
UITableViewCellSelectionStyleNone,
UITableViewCellSelectionStyleBlue,
UITableViewCellSelectionStyleGray,
UITableViewCellSelectionStyleDefault NS_ENUM_AVAILABLE_IOS(7_0)
};
讀者可以逐個試一試,這裡只是拋磚引玉,不再贅述。
4、返回前一個頁面的時候,cell去除點選效果
當我們點選cell,push進入下一個頁面,然後再返回前一個頁面的時候,這時我們發現cell有背景加深的效果,如下圖所示,
想要去掉這種效果,只要在-(void)tableView...didSelect中新增如下程式碼,
#pragma mark - UITableViewDataSource method
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//....
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
這樣在返回前一個頁面的時候,之前選中的cell就沒有背景加深的效果了,如下圖所示,