Maison  >  Questions et réponses  >  le corps du texte

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

PHP中文网PHP中文网2741 Il y a quelques jours424

répondre à tous(1)je répondrai

  • 巴扎黑

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

    Il peut être modifié, et cela peut être réalisé via kvc ou une recherche récursive de sous-vues.

    
    @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);
    }

    répondre
    0
  • Annulerrépondre