Home  >  Q&A  >  body text

iOS tableview 编辑模式下删除状态:标记区域的背景色能否修改

PHP中文网PHP中文网2741 days ago423

reply all(1)I'll reply

  • 巴扎黑

    巴扎黑2017-04-18 09:30:01

    It can be modified, and this purpose can be achieved through kvc or recursive search for subviews.

    
    @interface UIView (FindView)
    
    - (UIView *)findViewWithClassName:(NSString *)aName;
    
    @end
    
    
    @implementation UIView (FindView)
    
    - (UIView *)findViewWithClassName:(NSString *)aName {
        NSLog(@"%@", self);
        if([[[self class] description] isEqualToString:aName])
            return self;
    
        for(UIView *subview in self.subviews) {
            UIView *huntedSubview = [subview findViewWithClassName:aName];
    
            if(huntedSubview != nil)
                return huntedSubview;
        }
        return nil;
    }
    
    @end
    - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
        NSString *prefix    = @"UITableViewCell";
        NSString *suffix    = @"EditControl";
        NSString *className = [prefix stringByAppendingString:suffix];
        UIView *view = [cell findViewWithClassName:className];
        view.backgroundColor = [UIColor redColor];
        NSLog(@"%@", view);
    }

    reply
    0
  • Cancelreply