UITableViewCell左滑按鈕的自定義_新方法

1.發(fā)現(xiàn)問(wèn)題

最近復(fù)查老代碼,發(fā)現(xiàn)原來(lái)在CellView中自定義左滑按鈕的方法失效了,

- (void)didTransitionToState:(UITableViewCellStateMask)state;
- (void)willTransitionToState:(UITableViewCellStateMask)state;
- (void)layoutSubviews;

原在這三個(gè)方法中獲取UITableViewCellDeleteConfirmationView找不到了,翻看了下文檔,原來(lái)是ios系統(tǒng)更新中改變了view的層級(jí)結(jié)構(gòu).

在iOS10 +視圖中,UITableView的刪除按鈕層次結(jié)構(gòu)已更改。現(xiàn)在它屬于UITableView - UISwipeActionPullView - UISwipeActionStandardButton
wawImg.png
所以,現(xiàn)在我們需要找到這個(gè)UISwipeActionStandardButton,再進(jìn)行操作.
2.解決問(wèn)題

于是乎,我找到在tableview的代理方法

-(void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath

中操作是個(gè)很好的地方,上個(gè)簡(jiǎn)單的示例代碼

- (void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    for (UIView *subview in tableView.subviews) {
        if ([NSStringFromClass([subview class]) isEqualToString:@"UISwipeActionPullView"]) {
            if ([NSStringFromClass([subview.subviews[0] class]) isEqualToString:@"UISwipeActionStandardButton"]) {   
      
                subview.subviews[0].backgroundColor = [UIColor colorWithHexString:@"#FF556A"];
                UIImageView * imgV = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"wtImg"]];
                imgV.X = 25;imgV.Y = 18;
                [subview.subviews[0] addSubview:imgV];
            }
        }
    }
}

這樣就可以更改左滑按鈕的的樣式了,這里是把我的左滑刪除按鈕改成了圖片
wawImg.png

搞定. 歡迎大家指正

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 一、簡(jiǎn)介 <<UITableView(或簡(jiǎn)單地說(shuō),表視圖)的一個(gè)實(shí)例是用于顯示和編輯分層列出的信息的一種手段 <<...
    無(wú)邪8閱讀 10,663評(píng)論 3 3
  • 概述在iOS開(kāi)發(fā)中UITableView可以說(shuō)是使用最廣泛的控件,我們平時(shí)使用的軟件中到處都可以看到它的影子,類似...
    liudhkk閱讀 9,085評(píng)論 3 38
  • 1.ios高性能編程 (1).內(nèi)層 最小的內(nèi)層平均值和峰值(2).耗電量 高效的算法和數(shù)據(jù)結(jié)構(gòu)(3).初始化時(shí)...
    歐辰_OSR閱讀 29,520評(píng)論 8 265
  • //設(shè)置行高 (CGFloat)tableView:(UITableView *)tableView height...
    俊月閱讀 1,310評(píng)論 0 1
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒(méi)有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,135評(píng)論 1 32